7.用SELECT语句求计算机系学生的学号和姓名。
8.用SELECT语句求学生的学号、姓名、选的课程名及成绩。 9.查询所有姓“李”学生的名单。
10.查询姓王的计算机系大于20岁学生的信息。 11.查询数据结构课程的间接先行课。 12.查询所有课程的间接先行课。
13.用SELECT语句求C1课程的成绩低于张三的学生的学号和成绩。
14.用SELECT语句求选了C2课程并且也选了C3课程的学生的学号。
15.查询所有有成绩学生的学号、姓名和成绩。 16.查询每门课程的选修学生的名单。
45
实验七 SQL语言的DCL
一、实验目的
SQL的数据控制通过DCL(数据控制语言) 实现。DCL通过对数据库用户的授权和收权命令来实现有关数据的存取控制,以保证数据库的安全性。
本次实验了解DCL语言的GRANT和REVOKE语句对数据库存取权限的控制,学会SQL Server 2000的查询分析器中用DCL语言对数据库存取权限进行设定。
二、实验内容
1.启动数据库服务软件SQL Server 2000的查询分析器,用GRANT语句对数据库存取权限进行授权操作,语法格式如下: GRANT <系统特权组> To <用户组>|PUBLIC PUBLIC指数据库的所有用户。
2.用REVOKE语句将DBA(数据库管理员)、DBO(建库用户)授与其它用户对数据库的操作权收回,语法格式如下: REVOKE <权限组>|ALL PRIVILEGES [ON <对象名>] FROM <用户组名>|PUBLIC
ON用于被回收特权的对象,ALL PRIVILEGES指回收所有特权,PUBLIC指数据库的所有用户。
46
三、实验任务
1.在master数据库中创建一个S(学生表,表的结构和数据自己编写)
2.在数据库系统中建立一个新用户DCL,用户名和口令都相同。 3.利用DCL登陆数据库系统,然后运行查询语句,看是否能够查询S表。
4.利用sa用户登录数据库系统,打开数据库SQL Server 2000的查询分析器,用GRANT语句将对S表的所有特权授给用户DCL。 5.注销用户Administrator,用DCL登录系统,打开数据库SQL Server 2000的查询分析器,运行查询语句,看是否能够查询S表。 4.用DCL用户登录,打开数据库SQL Server 2000的查询分析器,用CREATE DATABASE语句建立一个新的数据库DCLDemo,看是否能够创建;
5.利用sa登录,把创建数据库和创建表格的权限授予DCL用户; 6.用DCL用户登录,打开数据库SQL Server 2000的查询分析器,用CREATE DATABASE语句建立一个新的数据库DCLDemo,看是否能够创建;
7.用DCL登录,利用查询分析器在数据库DCLDemo上建立一个表Abc,表结构如下图所示:
字段名 A1 类型 Varchar 长度 20 4,2 含义 字段1 字段2 字段3 B2 C3 Decimal Int 8.把对表Abc的所有权限授予给DCL;
9.利用DCL用户登录,使用查询分析器在表Abc中插入1条记录,
47
如下图所示:
A1 DCL测试
10.注销用户DCL,用Administrator登录系统,用REVOKE语句将用户DCL在表Abc中修改A1的权利收回。
11.利用DCL登录,看是否能够修改Abc表中的A1字段
B2 90.5 C3 30 48
相关推荐: