数据库原理实验报告_实验三_数据完整性与安全性控制
数据库安全性和完整性实验【模板范本】

实验9:数据库安全性实验一、实验目的加深对数据库安全性的理解,并掌握SQL Server中有关用户、角色及操作权限的管理方法.二、实验内容1.数据库的安全性实验。
在SQL Server企业管理器中,设置SQL Server的安全认证模式,实现对SQL Server的用户和角色的管理,设置和管理数据操作权限.三、实验原理和步骤1.设置SQL Server的安全认证模式,选择混合模式。
右键服务器属性—安全性:选择SQL Server和Windows身份验证模式.重启服务,生效。
2.账号:sa账号登录3.登录帐号的管理1)将Windows帐号添加到SQL Server 2005中创建操作系统用户-4.数据库用户的管理1)dbo用户;查看banking数据库的dbo用户,查看用户权限。
2)U1用户;创建banking数据库的U1用户,查看用户权限。
5.权限管理1)赋予所创建的U1用户db_datareader角色,查看用户权限2)赋予所创建的U1用户db_datawriter角色,查看用户权限3)赋予所创建的U1用户db_owner角色,查看用户权限4)两种方法赋予所创建的U1用户对banking数据库表customer的select权限,验证并写出sql语句5)两种方法赋予所创建的U1用户对banking数据库表branch的select和对branch_name修改的权限,验证并写出sql语句6)把对loan表的update权限授予所创建的U1用户用户,并允许将此权限再授予其他用户,验证并写出sql语句7)两种方法回收所创建的U1用户对banking数据库表customer的select权限,验证并写出sql语句8)两种方法回收所有用户对banking数据库表loan的update权限,验证并写出sql语句四、实验报告要求要求写出如下设计报告:1.用Transact—SQL写出实验操作的语句2.实验步骤和实验结果。
实验三数据库安全性实验报告

实验三数据库安全性实验报告第一篇:实验三数据库安全性实验报告一实验目的1.熟悉通过SQL语句对数据进行安全性控制;2.针对具体应用要求,完成授权和收回权限的操作;二实验工具SQL Server 2005利用SQL Server 2005 SSMS及其SQL查询编辑器。
三实验内容和要求使用SQL对数据进行安全性控制,包括:授权和权力回收。
操作完成后看看已授权的用户是否真正具有授予的数据操作的权力了;权力收回操作之后的用户是否确实丧失了收回的数据操作的权力。
根据以上要求认真填写实验报告,记录所有的实验用例。
具体操作可以参照课件中的实例。
具体操作内容:创建以下两个关系模式,并分别插入相应的数据。
职工(职工号,姓名,年龄,职务,工资,部门号)部门(部门号,名称,经理名,地址,电话号码)(1)请用SQL的Grant和Revoke语句(加上视图机制)完成以下授权定义或存取控制功能,并进行相应的安全性测试;(a)用户王明对两个表有select权力;(b)用户李勇对两个表有insert和delete权力;(c)每个职工只对自己的记录有select权力;(d)用户刘星对职工表有select权力,对工资字段具有更新权力;(e)用户张新具有修改这两个表的结构的权力;(f)用户周平具有对两个表所有权力(对,插,改,删数据),并具有给其他用户授权的权利;(g)用户杨兰具有从每个部门职工中select最高工资,最低工资,平均工资的权力,他不能查看每个人的工资。
(2)把上面(a)~(g)的每一种情况,撤销各用户所授予的权力。
四实验报告4.1 实验环境:Windows XPMicrosoftSQL server Management Studio 20054.2 实验内容与完成情况:--新建数据库create database workgouse work--创建以下两个关系模式,并分别插入相应的数据。
--Worker(职工号,姓名,年龄,职务,工资,部门号)gocreate table Worker(职工号varchar(10),姓名char(10),年龄int,职务 char(15),工资 int,部门号 char(50))--Section(部门号,名称,经理名,地址,电话号码)create table Section(职工号char(10),名称char(10),经理名char(10),地址 char(50),电话 char(15));go--插入部门信息insert into Section values('a001','市场部门','李永','白理工','***');insert into Section values('a002','营销部门','李刚','白理工','***');--插入职工信息insert into Worker values('a001001','王明',20,'市场营销员',2000,'a001');insert into Worker values('a001002','李村',29,'市场营销员',2000,'a001');insert into Worker values('a001003','李永',20,'经理',5000,'a001');insert into Worker values('a002001','罗杰',18,'销售员',2000,'a002');insert into Worker values('a002002','李红',24,'销售员',2000,'a002');insert into Worker values('a002003','李刚',32,'经理',5000,'a002');--查询部门表和职工表的数据select *from Worker;select *from Section;--授权use workgo--(a)用户王明对两个表有select权力;create login [王明] with password=N'1234';create user [王明] for login [王明];grant select on Worker to [王明];grant select on Section to [王明];--插入数据权限测试insert into Worker values('a002004','罗红',28,'销售助理',4000,'a002');--查询数据权限测试select *from Worker;--(b)用户李勇对两个表有insert和delete权力;use workgocreate login [李勇] with password=N'1234';create user [李勇] for login [李勇];grant insert,delete on Worker to [李勇];grant insert,delete on Section to [李勇];--插入数据权限测试insert into Worker values('a002005','罗莉',52,'销售助理',4000,'a002');--查询数据权限测试select *from Worker;--删除权限测试delete Worker from where 职工号='a002001';--(c)每个职工只对自己的记录有select权力;use workgocreate view Myself as select * from Workerwhere 姓名=user;grant select on Myself to public;--(d)用户刘星对职工表有select权力,对工资字段具有更新权力;use workgocreate login [刘星] with password=N'1234';create user [刘星] for login [刘星];grant select,update(工资)on Worker to [刘星];--更新修改权限测试update Worker set 工资=3500 where 职工号='a002001'--查询数据权限测试select *from Worker;--(e)用户张新具有修改这两个表的结构的权力;use workgocreate login [张新] with password=N'1234';create user [张新] for login [张新];grant all PRIVILEGES on Worker to 张新;grant all PRIVILEGES on Section to 张新;--(f)用户周平具有对两个表所有权力(对,插,改,删数据),并具有给其他用户授权的权利;use workgocreate login [周平] with password=N'1234';create user [周平] for login [周平];grant all PRIVILEGES on Worker to 周平with grant option;grant all PRIVILEGES on Section to 周平with grant option;--(g)用户杨兰具有从每个部门职工中select最高工资,最低工资,平均工资的权力,他不能查看每个人的工资。
数据库原理实验报告-实验三-数据完整性与安全性控制

《数据库原理》实验报告题目:实验三数据完整性与安全性控制学号班级日期2016.10.18一、实验容、步骤以及结果1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。
(18分,每小题3分)(1)非空约束:为出生日期添加非空约束。
非空约束:取消表S中sbirth的勾。
可能需要重建表。
(2)主键约束:将学号(sno)设置为主键,主键名为pk_sno。
设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择‘修改’命令-->对话框中右击sno-->选择‘设置主键’-->修改主键名为‘pk_sno’-->保存(3)唯一约束:为(sname)添加唯一约束(唯一键),约束名为uk_sname。
唯一约束:单击数据库Student-->单击表-->单击S-->右击sname-->选择‘修改’命令→右击sname-->选择‘索引和键’命令-->打开‘索引和键’框图-->添加-->是否唯一改为‘是’-->名称改为‘us_sname’-->关闭。
(4)缺省约束:为性别(ssex)添加默认值,其值为“男”。
设默认约束:单击数据库Student→单击表→单击S→右击sno→选择‘修改’命令→单击cno-->在默认值栏输入‘男’→保存(5)CHECK约束:为SC表的成绩(grade)添加CHECK约束,约束名为ck_grade,其检查条件为:成绩应该在0-100之间。
(6)外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表和C表,外键名称分别为fk_sno,fk_cno。
2.在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建第1题中的(2)-(6)小题.(15分,每小题3分,提示:alter table add constraint)删除约束:单击数据库Student-->表-->单击S-->展开键、约束。
数据库完整性与安全性实验

1.实验五数据库完整性与安全性实验1.1 实验目的1.通过对完整性规则的定义实现,熟悉了解Mysql中完整性保证的规则和实现方法,加深对数据完整性的理解。
2.通过对安全性相关内容的定义,熟悉了解Mysql中安全性的内容和实现方法,加深对数据库安全性的理解1.2 实验内容1.2.1 完整性实验(1)分别定义学生数据库中各基表的主键、外键,实现实体完整性约束和参照完整性约束;(2)分别向学生表、课程表插入具有相同学号和相同课程编号的学生数据和课程数据,验证其实体完整性约束;(3)向学生选课表中插入一条数据,课程编号是课程表中没有的,验证参照完整性约束;(4)删除学生表中的所有数据,验证参照完整性约束;(5)定义存储过程,完成查询某个学生的选课情况,并执行。
(6)定义触发器,当向学生表插入新的一条记录时,将所有学生出生日期加1;并对其进行测试。
(7)用sql完成以上操作。
1.2.2 安全性实验(1)定义一新的登陆帐号、数据库用户,并授予其访问学生数据库的读权限;(2)分别用sa用户和新定义的用户访问学生数据库,并对其中的学生表数据进行修改;(3)再次用此用户访问学生数据库,并对其中的学生表数据进行修改。
(4)用SQL语句分别完成以上内容。
1.3 实验环境Window8操作系统Mysql 8.0版本数据库Mysql workbench 8.0可视化工具Mysql命令行编辑器1.4 实验步骤及结果分析1.4.1 完整性1.4.1.1 分别定义学生数据库中各基表的主键、外键,实现实体完整性约束和参照完整性约束1.首先因为在之前创建表的时候定义了主键,因此,我们需要先将所有表的主键撤销掉,然后重新创建主键。
Mysql语句(删除主键):alter table student drop primary key;alter table course drop primary key;alter table sc drop primary key;2.重新创建主键Mysql语句(创建主键):alter table student add primary key(sno);alter table course add primary key(cno);alter table sc add primary key(sno,cno);3.到此,我们已经重新添加了各表的主键,接下来我们为SC表添加外键。
数据库实验-数据控制(安全性和完整性)

数据库原理及应用实验报告实验四实验题目:数据控制(安全性和完整性)实验类型:验证_______________________________ 实验地点:软件实验室二系班级:计科系***班_____________________姓名:***______________________学号:***______________________2013年11月10日一、实验项目名称:数据控制(安全性和完整性)二、实验目的和任务:理解SQL Server的用户与权限管理机制,通过企业管理器创建用户,并给定的用户分配权限,并掌握数据库完整性概念,实现实体、参照和自定义约束。
三、实验内容:1.创建数据库ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),部门(部门号,名称,经理名,地址,电话号)2.创建用户sqlaa,它对关系模式职工具有查询和删除权限3.创建用户sqlbb,它对关系模式职工和部门具有所有的权限(所有权限的表达)4.对该用户sqlcc授予查找职工关系模式,更新部门关系模式的权限,同时可以将该权限进行传播,并将权限传播给用户sqlaa5.创建用户sqldd,它对关系模式职工修改表结构的权限6.收回用户sqlcc的相应权限,了解sqlaa的权限情况7.创建角色role1,它的权限是对部门关系模式进行查、插、改、删,将用户sqldd 和sqlcc归于角色role1,查看用户的权限8.定义部门和职工关系模式的主键,外键,定义职工年龄不超过60岁,部门名称必须取值唯一以下为选做内容:1.定义用户sqlee,具有从每个部门职工中查看最高工资,最低工资和平均工资的权力,但他不能查看每个人的工资2.在对关系模式定义外键时,分别设置无行动和级连两种方式,并进行数据插入四、实验步骤及截图:1、打开SQL Server 2005,建立连接。
2、创建数据库ycudata,它包含两个关系模式:职工(职工号,姓名,年龄,职务,工资,部门号),部门(部门号,名称,经理名,地址,电话号)(1)创建职工关系模式:(2)创建部门关系模式:3、创建用户sqlaa,它对关系模式职工具有查询和删除权限(1)创建登录名为work的用户:打开安全性,右击登录名,然后新建一个登录名,点击确定。
数据库的完整性和安全性实验报告

信息工程学院实验报告课程名称:《数据库原理》实验项目名称:数据库的完整性和安全性一、实 验 目 的:(1)掌握数据库约束的概念;(2)熟悉SQL SERVER 的完整性约束技术。
(3)了解SQL SERVER 的违反完整性处理措施。
(4)了解登录账户的管理理念与具体方法。
(5)了解数据库用户的管理的要则。
(6)了解用户权限管理的内涵与方法。
二、实 验 设 备 与 器 件 Win7 +Sql server 2008 三、实 验 内 容 与 步 骤(一)测试完整性运行附录中的SQL 语句,理解SQL 语句中包含的完整性定义。
然后执行下面的SQL 语句,看是否能正常运行,若无法执行,请说明原因。
1.对dept 表进行数据增删改,并检查完整性规则 Dept 已存在的完整性规则如下: dno CHAR(2)PRIMARY KEYdnameV ARCHAR(20) NOT NULL,UNIQUE(1)增加数据INSERT INTO dept V ALUES('D1','计科系');----正常插入INSERT INTO dept V ALUES('D2','电信系');----正常插入INSERT INTO dept V ALUES(NULL,'机械系'); ----违反dno 主键(NOT NULL )规则INSERT INTO dept V ALUES('D2','机械系'); ----违反dno 主键(UNIQUE )INSERT INTO dept V ALUES('D3',NULL); ----违反dname 的NOT NULL 规则INSERT INTO dept V ALUES('D3','计科系'); ----违反dname 的UNIQUE 规则INSERT INTO dept V ALUES('D3','机械系');----正常插入(2)删除数据DELETE FROM dept WHERE dno='D3';----正常删除(3)修改数据UPDA TE dept SET dname='计算机科学系' WHERE dno='D1';----正常修改UPDA TE dept SET dname='电信系' WHERE dno='D1'; ----违反dname的UNIQUE规则UPDA TE dept SET dname=NULL WHERE dno='D1'; 违反dname的UNIQUE规则2.对student表进行数据增删改,并检查完整性规则Student已存在完整性规则如下:sno CHAR(2) PRIMARY KEYsname V ARCHAR(20) NOT NULL,ssex CHAR(2) NOT NULL, CHECK(ssex in('男','女'))sage INT NOT NULL,dno CHAR(2) NOT NULL, FOREIGN KEY REFERENCES dept(dno)ON DELETE CASCADE ON UPDATE CASCADE(1)增加数据INSERT INTO student V ALUES('S1','张刚','男',20,'D1');----正常插入INSERT INTO student V ALUES('S2','李梅','女',21,'D2');----正常插入INSERT INTO student V ALUES('S2','吴敏','男',20,'D1'); ----正常插入INSERT INTO student V ALUES(NULL,'吴敏','男',20,'D1'); ----违反sno 的主键(NOT NULL)规则INSERT INTO student V ALUES('S3','吴敏','男',NULL,'D1'); 违反sage 的主键(NOT NULL)规则INSERT INTO student V ALUES('S3','吴敏','M',20,'D1'); 违反ssex 的CHECK规则INSERT INTO student V ALUES('S3','吴敏','男',20,'D3'); ----正常插入INSERT INTO student V ALUES('S3','吴敏','男',20,'D1');----正常插入(2)删除数据DELETE FROM student WHERE sno='S3'; ----正常删除(3)修改数据UPDA TE student SET sname='赵强',dno='D2' WHERE sno='S1'-----正常修改UPDA TE student SET ssex='F' WHERE sno='S1'; -----违反ssex的CHECK 规则UPDA TE student SET sno='S2' WHERE sno='S1'; -----违反sno的主键(UNIQUE)规则UPDA TE student SET dno='D3' WHERE sno='S1'; 违反dno 的外键规则UPDA TE dept SET dno='D3' WHERE dno='D1';----检查dno的外键ON UPDATE规则,观察运行后效果DELETE FROM dept WHERE dno='D2';----检查dno的外键ON DELETE规则,观察运行后效果(二)使用规则实现数据完整性(1)在查询分析器中,利用命令(CREATE RULE),创建一个关于年龄(sage)约束的规则,将“sage”列的值约束在0~200之间;然后将所创建的规则绑定到“sage”列(提示:用命令Sp_bindrule)。
实验3 数据库的安全性和完整性

课程实验报告课程名称数据库系统概论班级实验日期姓名学号实验成绩实验名称实验3:数据库的安全性和完整性实验目的及要求1.掌握实体完整性规则的定义方法;2.掌握参照完整性规则的定义方法;3.掌握用户定义完整性的定义方法;4.掌握数据库安全性控制。
实验环境操作系统:Windows DBMS:SQL Server 2005实验内容有三个关系模式:Student(sno varchar(10) 主键,sname varchar(8), ssex varchar(2) 默认为‘男’, sage int 介于20到50之间, sdept varchar(20));Course(cno varchar(5) 主键, cname varchar(20) 唯一, cpno varchar(5), credit int);SC(sno varchar(10) 主键,Student表的外键, cno varchar(5) 主键,Course表的外键, grade int)。
数据库的完整性(1)利用查询分析器创建上述3个基本表。
(2)删除student表的关于sage 20到50的约束数据库的安全性:用GRANT和REVOKE语句完成以下授权定义或存取控制功能:(1)用户王明对Student表和Course表有SELECT权力;(2)用户李勇对Student表和Course表有INSERT和DELETE权力;(3)用户刘星对Student表有SELECT权力,对Student表的sage字段有更新权力;(4)用户张新具有创建表的权力;(5)用户周平具有对Student表和Course表所有权力,并具有给其他用户授权的权力;(6)回收李勇、张新的权限。
调试过程及实验结果(1)利用查询分析器创建上述3个基本表。
(2)_删除student表的关于sage 20到50的约束(3)用户王明对Student表和Course表有SELECT权力;(4)用户刘星对Student表有SELECT权力,对Student表的sage字段有更新权力;(5)用户张新具有创建表的权力;(6)用户周平具有对Student表和Course表所有权力,并具有给其他用户授权的权力;(7)回收李勇、张新的权限。
数据库原理实验报告-数据库的安全性

实验题目三数据库的安全性
一、实验目的
熟悉SQL Server中有关用户、角色及操作权限的实用,加深学生对数据库安全性的理解。
二、实验内容和要求
1.理解SQL Server的安全控制机制;
2.对SQL Server的登录名、用户和角色进行管理;
3.学习通过SQL语言的数据控制功能,设置和管理数据操作权限;
三、实验主要仪器设备和材料
1.计算机及操作系统:PC机,Windows 2000/XP或更高版本;
2.数据库管理系统:SQL Server 2005或更高版本;
四、实验方法、步骤及结果测试
对teaching数据库完成以下操作。
1.新建登录名“UserA(+学号)”,选择“SQL Server身份验证模式”并设置密码。
设置页面
2.使用“UserA”登录名登录,查看teaching数据库中student表的学生信息。
执行结果
3. 使用“sa”重新登录。
修改“UserA”的属性:服务器角色面板中,勾选
sysadmin 两项;用户映射中,赋予对数据库teaching和master的“db_owner”角色权限。
设置界面设置界面
4. 使用“UserA”登录数据库,查询teaching数据库中student表的学生信息,验证是否
执行结果
在服务器级别上新建两个“SQL Server身份验证”的登录名:login1(学号)、
执行结果
数据库新建两个用户:User1(学号)、Use_2(学号)分别对应login1
五、思考题
1.解释说明SQL Server 中的登录名、用户、服务器角色、数据库角色。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验内容、步骤以及结果1.利用图形用户界面对实验一中所创建的Student库的S表中,增加以下的约束和索引。
(18分,每小题3分)(1) 非空约束:为出生日期添加非空约束。
非空约束:取消表S中sbirth的勾。
可能需要重建表。
(2) 主键约束:将学号(sno)设置为主键,主键名为pk_sno。
设主键:单击数据库Student-->单击表-->单击S-->右击sno-->选择修改命令-->对话框中右击sno-->选择设置主键'>修改主键名为pk_sno '-->保存(3)唯一约束:为姓名(sname)添加唯一约束(唯一键),约束名为uk_sname 。
唯一约束:单击数据库Student-->单击表--> 单击S-->右击sname-->选择修改’ 命令T右击sname-->选择索引和键命令--> 打开索引和键框图--> 添加--> 是否唯一改为是--> 名称改为us sname '-->关闭。
(4)缺省约束:为性别(ssex)添加默认值,其值为男设默认约束:单击数据库Student宀单击表宀单击右击sno^选择修改命令宀单击cno-->在默认值栏输入男’保存D62.s1udent - Diagram_0* D62.sludent - dbo.S* SQLQuery5.sql - D... (D62\A^m i n (52J)*列容 埶据类型 允祥值Q 5TI0Ctiar(lO) n snamenvarchar (20) a 卜:S5SXnchai ■⑵ 團sbirttidate□ adeptnv ar char (20)sPhoneNoctiar(LQ)@]数捐类型 允傑Mdl 值 曰表设计器RowGuid E 标识魁不用于复制 大小(5) CHECK 约束:为SC 表的成绩(grade)添加CHECK 约束,约束名为ck grade ,其检查条件为:成绩应该在0-100之间。
ffin har 妊2 Nnrh昙否否否二CHEC<^□ c^a)([cgradep =(C) AND [cgrade]^ =(l(X)t)[^ E怖氓儈翻ck_gradc说明E者设计器强制弭于INSERT UPDATE昱睜制馬于复制昙在鱼建或呈萨吕托时哙宜盂厨呈⑹外键约束:为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表和C表,外键名称分别为fk_sno , fk_cno。
RIW T fl x2 (SQL:Semr 10uCk55CK)亠Dti^XAdmini) 芯至哇| ftepnrt 灵EWTj Report Server f empDfi|J studerrt"丄JSfiJTX«E-j ">H LJ琢齐国□ dlHbC*1 3 dboiSQ 3 dboiSC国ZJ fiH «f PK_SC_9(^C«JJ05:f氐EO总A m 土匸s N粧i ^«CT HS=Lt >疽ir _j 宙・'i3IF J可京詰1+ _J. Service Emlw-r [T N盂全性远走的CHE匚K钓克[S[;tk_gradeEE^^lW CHECK 釣荒£厘性*舌达式D«.f1yd«nt ・dbo.K n ①好站fJ" - D 心込皿in 泊• % tiaras「丁JJH=J»声日4w(ioj n™dw(LO]2.在图形用户界面中删除以上小题中已经创建的各种约束 ,用SQL 语言分别重新创建第 1 题中的(2)-(6)小题.(15 分,每小题 3 分,提示:alter table add constraint)删除约束:单击数据库Student-->表--> 单击S-->展开键、约束。
一一删除即可。
用SQL语句新建约束iis-ssAE'IrJ-iM*削总・f P*_54_咒丸05打-计■■鼻h&■ TMEiV ^SEar* QI *3tHrjiftJ •组®岫丄丄J 盘 出JjWa ■巧即血□ dbc^L・丄■冃=n dbo.sc匸・U5E [student;GOE) ALTER TABLE 5-ADD CONSTEtAINT 口k_sna PRIMLY KEY sue);ALTER TAELE S-ALTER. COLUMN sname nvarchar 20: null;占ALTER 17YBLE 5-ADD CCN5TRAINT us_5nair.e unique (anar.e;;i ALTER TAELE SADD CONSTRAINT df ssex default '男'FOR ssex;百ALTER TABLE £亡-ADD CONSTRA工NT ck_arade 二HECK i I corrade] >= i 0 AND [carade] <= (100 s ]: \- ALTERTABLE ECADD CCNSTRAINT fk sno FOREIGN KEY sna ■ REFERENCES S isno *CCN5TRAINT fk eno FOREIGN KEY UG•口REFERENCES C * eno);3. 利用图形用户界面根据上述SC表中的外键定义画出由S,C,SC表构成的数据库关系图(5分,提示:选中student -> 数据关系图)4. 用SQL语言删除S表中所创建的缺省约束和外键约束。
(6分,每小题3分)曰 iLLTER TAELE 5I-DROP CONSTRAINT df ssex ;□ ALTER TA3LE SCDR0F GOrrSTRAlNTf GQ^SIRAJ^T flc saG;心消息命令已咸功弼妇5. 在图形用户界面中创建新登录名以及用户 。
(16分)(1)根据第五版教材第四章 第7题,创建数据库company 和其中的基本表,并创建该题中所需要用到的各个用户以及相关的登录名。
(10分)创建数据库创建登录名出 LZC-L4=TCP (SQL 弘w 10 0 L600 • lir -LAPTCP\lrt)tl _i 茎M 凉垄 4J _J 進5集 E U 田u e Q 回li e R.eport&erverRep o-nSe rve^-Temp DB5tudert J fit 砂也匿 J s4 — setsU H dbn 離二 t-l 3l dbo.3?nMFKn^-mrfic)tl□ns 呱 10) i nmanc 13*( 10 龟活号科 ncii^lCOLZC - LAPTOPxompany - dbo.nfl'J pany - dkw创建数据库用户(2)用图形用户界面完成以下的权限赋予:(每小题3分)a)用户王明对两个表均有Select和Insert的权力。
王朗的权険:列取阳显式肯厂b)用户李勇对职工表具有Select权力,对工资字段具有更新权力李里的权眼B):列删艮Q,昱我有数具WF查看更冃踪E E o更戦dbo B E Fl |r—j 更新dlLo冋E0接管所育枳<3b?E E O性制Jby□□□删晾dJbo園E0 Idbo i厨 1 00 ■引用dLu0□06. 用SQL语句授权和收回权限并对权限加以验证三dtc[21(1)根据第五版教材第四章第7题。
(40分,每题20分)(1)根据第五版教材第四章第7题。
请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控制功能:(a)用户王明对两个表有(b)用户李勇对两个表有INSERT和DELETE权力。
E GRANT :IH5EST.r DELETE ON 职工TO ;—GRANT INSERT .DELETE GN 部门TO 皋弟;|_J消息命令已成功完成。
(c )每个职工只对自己的记录有SELECT权力。
□CREATE VIEW 个人信息5ELECI ” FROM职工- WHERE CURRENT^USER =姓名GOE GRANT SELECT ON 个人信息-TO PUBLIC;(d)用户刘星对职工表有SELECT权力,对工资字段具有更新权力B GRANT SELECT H UPDA7E 工资 ON 职工 L TO 刘星:GO(e )用户张新具有修改这两个表的结构的权力□ GRANT ALTERON 职工 "o 来新; GO曰 GRANT 4匚TER|ON 部门 —0张新;: GOEa 消息命令已成功完成。
(f )用户周平具有对两个表所有权力(读,插,改,删数据), 户授权的权力曰 GRANT ALL PRIVILEGES 卯职工 TO 周平-WITH SRAHT OFT 工ON ;A GRANT ALL PRIVILEGES 册部门 TO 周平L WIIH GRANT OPTION;IGOMrrr血消息ALL 赧限己福推荐使用,并且冥保留用于兼容性目弧它并不表示对体定义了皿叔限。
皿 叔限已不再推荐使用,并且只保留用于兼容性目的〜它并不表示对实体定义了 ALL 权限"H GRANT 日ELECI,INSERT. ALTEK,DELETE ON 职.工 TO 周平 -WITH GRANT OPTION;占 GRANT SELK CT ,.- IMS E RT. ATTE R ,r BE LE'TE CN 部门 T 。
周平1- WITH GRANT OPTION;广I內消息命令已成功主并具有给其他用(g )用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的权力,他不能查看每个人的工资F] CREATE VIEW 部门工资豪SE-ECT郃门.茗称八向工资)最高工资『円刑工资)最低工资屈苗工资、平均工资FROM职工,部门WHERE职工.部门号嘟门”部门号GROUP B¥部门-名称:GO□GRAKT SELECT ON 部门工资L T0杨兰;二消息命令已成功完成。
用户李勇希望查询部门表失败q ,0 LZC-LA-TOP :沁10.C.1-JO - 4 =+1丄垄痕KA住U Jtompany命Cl* Ui. J应邨二-J dib^JIZ书口¥ :■.-口”L I」^erw re- BraScrrT Ci Ff«用户李勇查询职工表成功▼ XSQLQueryl.sql - pany 带再(56))* pany - dbc.部门 E SELECT -L FROM 职工:□结累lj 消息取工号姓名年龄职务工资部门号LZC^LAPTO? (10,0 RTM)李W [56) company 00:00:000 行~^2mi(2)根据第五版教材第四章 第8题。