更新应用程序组接受= '是的'
查询成绩>3.9分的学生的成绩所以问题是要授予一个需要成功运行这段代码的用户什么特权。
我猜是:
UPDATE权限在Application上,SELECT在Application上,SELECT在Student上,所以UPDATE在Student上不需要。
问题询问是否需要SELECT on Application(?)(因为WHERE部分)并且是否需要UPDATE on Student(我很确定这一个是no)。
还有一个问题:
查询:DELETE Student WHERE stID NOT IN (SELECT stID FROM Application)
问题:下列哪些特权是不需要的?a)删除Student
b)选择学生
c)在应用程序上删除d)选择应用程序
这些答案主要是我需要确定的东西,只是想问一下你的意见。
UPDATE权限在Application上,SELECT在Application上,SELECT在
没错。
由于WHERE子句,在Application上需要问题询问是否需要SELECT on Application (?) (Because ofWHERE部分)
SELECT权限。像这样的更新语句
update application set accepted = 'yes';
不需要SELECT权限
和UPDATE on Student required(我很确定这个是no)。
没有人试图更新学生。不需要在Student上使用UPDATE权限
所有这些都很容易测试。安装一个免费的开源数据库,比如PostgreSQL。召开两次会议。在一台计算机上以超级用户身份连接,在另一台计算机上以测试用户身份连接。使用超级用户会话授予和撤销权限,使用测试会话执行查询。