数据库原理实验报告实验三数据完整性与安全性控制.docx
- 文档编号:27894504
- 上传时间:2023-07-06
- 格式:DOCX
- 页数:21
- 大小:792.93KB
数据库原理实验报告实验三数据完整性与安全性控制.docx
《数据库原理实验报告实验三数据完整性与安全性控制.docx》由会员分享,可在线阅读,更多相关《数据库原理实验报告实验三数据完整性与安全性控制.docx(21页珍藏版)》请在冰豆网上搜索。
数据库原理实验报告实验三数据完整性与安全性控制
数据库原理》实验报告
题目:
实验三
学号
姓名
班级
日期
数据完整性与安全性控制
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-->选择修改’命令t右击sname-->选择索引和键命令-->打开索引和键框图-->添加-->是否唯一改为是-->名称改为ussname'-->关闭。
(4)缺省约束:
为性别(ssex)添加默认值,其值为男
设默认约束:
单击数据库Student宀单击表宀单击右击sno^选择修改命令宀
单击cno-->在默认值栏输入男’保存
ffinhar
妊2Nnrh昙否否否二
D62.s1udent-Diagram_0*D62.sludent-dbo.S*SQLQuery5.sql-D...(D62\A^min(52J)*
列容埶据类型允祥值
Q5TI0
Ctiar(lO)
n
sname
nvarchar(20)
a
卜:
S5SX
nchai■⑵
團
sbirtti
date
□
adept
nvarchar(20)
sPhoneNo
ctiar(LQ)
@]
数捐类型允傑Mdl值曰表设计器
RowGuid
E标识魁
不用于复制大小
(5)CHECK约束:
为SC表的成绩(grade)添加CHECK约束,约束名为ckgrade,其
检查条件为:
成绩应该在0-100之间。
舌达式
D«.f1yd«nt・dbo.Kn①好站fJ"-D心込皿in泊
•%tiaras「丁jjh=j
»声日4w(iojn
™dw(LO]
i:
gigEiltrV]
□c^a)
([cgradep=(C)AND[cgrade]^=(l(X)t)[^E怖氓
儈翻ck_gradc
说明
E者设计器
强制弭于INSERTUPDATE昱
睜制馬于复制昙
在鱼建或呈萨吕托时哙宜盂厨呈
⑹外键约束:
为SC表添加外键约束,将sno,cno设置为外键,其引用表分别是S表
和C表,外键名称分别为fk_sno,fk_cno。
RIWtflx
2(SQL:
Semr10uCk55CK)亠Dti^XAdmini)芯至哇
|ftepnrt灵ewt
jReportServerfempDfi
|Jstuderrt
"丄JSfiJTX«E
-j">
hLJ琢齐
国□dlHbC
*13dboiS
Q3dboiSC
国ZJfi
H«
fPK_SC_9(^C«JJ05:
f氐EO
总Am土匸sN粧
i^«ctHS=Lt>疽ir_j宙・'i3
IFJ可京詰
1+_J.ServiceEmlw-r[TN盂全性
2.在图形用户界面中删除以上小题中已经创建的各种约束,用SQL语言分别重新创建
第1题中的
(2)-(6)小题.(15分,每小题3分,提示:
altertableaddconstraint)
删除约束:
单击数据库Student-->表-->单击S-->展开键、约束。
一一删除即可。
iis-ss
AE
'IrJ-iM*
削总・
用SQL语句新建约束
U5E[student;
GO
E)ALTERTABLE5
-ADDCONSTEtAINT口k_snaPRIMLYKEYsue);
ALTERTAELES
-ALTER.COLUMNsnamenvarchar20:
null;
占ALTER17YBLE5
-ADDCCN5TRAINTus_5nair.eunique(anar.e;;
iALTERTAELES
ADDCONSTRAINTdfssexdefault'男'FORssex;
百ALTERTABLE£亡
-ADDCONSTRA工NTck_arade二HECKiIcorrade]>=i0AND[carade]<=(100s]:
\-ALTERTABLEec
ADDCCNSTRAINTfksnoFOREIGNKEYsna■REFERENCESSisno*
CCN5TRAINTfkenoFOREIGNKEYUG•口REFERENCESC*eno);
3.利用图形用户界面根据上述SC表中的外键定义画出由S,C,SC表构成的数据库关系图
(5分,提示:
选中student->数据关系图)
4.用SQL语言删除S表中所创建的缺省约束和外键约束。
(6分,每小题3分)
曰iLLTERTAELE5
I-DROPCONSTRAINTdfssex;
□ALTERTA3LESC
DR0FGOrrSTRAlNTfGQ^SIRAJ^TflcsaG;
心消息
命令已咸功弼妇
5.在图形用户界面中创建新登录名以及用户。
(16分)
(1)根据第五版教材第四章第7题,创建数据库company和其中的基本表,并创建
该题中所需要用到的各个用户以及相关的登录名。
(10分)
创建数据库
LZC-LAPTOPxompany-dbo.nfl'JLEC-LAPrOP.company-dkw
创建登录名
创建数据库用户
(2)用图形用户界面完成以下的权限赋予:
(每小题3分)
王朗的权険:
列取阳
显式肯厂
李里的权眼B):
列删艮Q,
昱我有数
具WF
查看更冃踪
E
E
o
更戦
dbo
B
E
Fl|
r—j
更新
dlLo
冋
E
0
接管所育枳
<3b?
E
E
O
性制
Jby
□
□
□
删晾
dJbo
園
E
0I
dbo
i厨
10
0■
引用
dLu
0
□
0
6.用SQL语句授权和收回权限并对权限加以验证。
(40分,每题20分)
请用SQL的GRANT和REVOKE语句(加上视图机制)完成以下授权定义或存取控
制功能:
(a)用户王明对两个表有SELECT权力。
[
[
二二工:
丁二S-1-2T
TO王明
]GRANT5ELE亡H
-TO壬明
跡职工
ON部门
4
J消息
产令已成班完成0
(b)用户李勇对两个表有INSERT和DELETE权力。
EGRANT:
IH5EST.rDELETEON职工TO;—
GRANTINSERT.DELETEGN部门TO皋弟;|
_J消息
命令已成功完成。
(c)每个职工只对自己的记录有SELECT权力。
□CREATEVIEW个人信息5ELECI”FROM职工
-WHERECURRENT^USER=姓名GO
EGRANTSELECTON个人信息
-TOPUBLIC;
(d)用户刘星对职工表有SELECT权力,对工资字段具有更新权力
BGRANTSELECThUPDA7E工资ON职工lto刘星:
GO
(e)用户张新具有修改这两个表的结构的权力
□GRANTALTER
ON职工"o来新;
GO
曰GRANT4匚TER|
ON部门—0张新;:
GO
Ea消息
并具有给其他用
命令已成功完成。
(f)用户周平具有对两个表所有权力(读,插,改,删数据),户授权的权力
曰GRANTALLPRIVILEGES卯职工
TO周平
-WITHSRAHTOFT工ON;
AGRANTALLPRIVILEGES册部门
TO周平
lwiihGRANTOPTION;I
GO
mrrr
血消息
ALL赧限己福推荐使用,并且冥保留用于兼容性目弧它并不表示对体定义了皿叔限。
皿叔限已不再推荐使用,并且只保留用于兼容性目的〜它并不表示对实体定义了all权限"
HGRANT日ELECI,INSERT.ALTEK,DELETEON职.工TO周平
-WITHGRANTOPTION;
占GRANTSELKCT,.-IMSERT.ATTER,rBELE'TECN部门T。
周平
1-WITHGRANTOPTION;
广I
(g)用户杨兰具有从每个部门职工中SELECT最高工资、最低工资、平均工资的
权力,他不能查看每个人的工资
F]CREATEVIEW部门工资豪
se-ect郃门.茗称八向工资)最高工资『円刑工资)最低工资屈苗工资、平均工资FROM职工,部门
where职工.部门号嘟门”部门号
GROUPB¥部门-名称:
GO
□GRAKTSELECTON部门工资
LT0杨兰;
二消息
命令已成功完成。
用户李勇希望查询部门表失败
q,0LZC-LA-TOP:
沁10.C.1-JO-4=
+1丄垄痕KA住
UJ
tompany
命Cl
*U
i.J应邨二
-Jdib^JIZ
书口¥:
■
.-口”
lI」^erwre-BraScrr
tCiFf«
用户李勇查询职工表成功
SQLQueryl.sql-Lpany带再(56))*LZC-LAPTOP.company-dbc.部门ESELECT-
Lfrom职工:
□结累lj消息
取工号姓名年龄职务工资部门号
&査询已成51执行.
LZC^LAPTO?
(10,0RTM)李W[56)company00:
00:
000行
~^2mi
(2)根据第五版教材第四章第8题。
(提示:
(c)和(g)小题可创建合适的视图,针对视图进行授权,
(c)小题用CURRENT_USER)
日DROPVIEW个人信息芒
DROPVIEW部门工资匸
REVOKESELECTQK职工FROM王明;
REVOKESELECTOtT部j_FROM王明;
REVOKEINSERT,DELETSON职工FROM李旦;
REVOKEINSERT,DELEr^ION部卩只心耳圭冃;
REVOXESELECTrUPDATE工资.ONI职工FROM刘星:
REVOKEALTERON职工FROM张新:
REVOKEALTERON部门FROM张竊;|
REVOKE5E.LECT,IK5ERT,ALTERfDELETEON职工FROM周平CASCADE;
REVOKESELECT,IK5ERTALTER,DELETEON部FROM周平CA5CADE;
选做实验
1.利用SQL语言创建,验证和删除规则。
⑴创建一个ssex_rule规则(createrule),将其绑定(sp_bindrule)到S表的ssex性别字
段上(请验证该规则生效,保证了输入的性别只能是男”或者女”)。
』1
E匚REATERULE5sex_r口IL伫
LeiistIMJ男・J女■门
GO
EXE匚t口bindrulefssexrule1,TS*5sex1;
irr
自消息
已将觌则绑定到表的列。
l_2£-LAPTOP-fitudent-dt»5
£QLQueryLsqll
-L-LAPTCkP\l±t[55))*
*X
shrtTi
adept
sRhoreNc
7
口
«號三
»无
Orag酣ol4HO
1
O12335
e
NULL
MJLL
NULL
NULL
hUU
hUI
⑵删除ssex_rule规则(注意:
规则已绑定到ssex表的性别字段上,需要先解除原有
的绑定sp_unbindrule,droprule)。
2.利用SQL语言创建,验证和删除默认值
⑴创建一个ssex_def默认对象(createdefault),将其绑定(sp_bindefault)至US表的
ssex性别字段上,使其默认值为男”请验证该默认值生效)。
CREATEDEFAULTasexdfAS'男
GC|
sp_tiind.efaultTssex_df1,T5-ssex
的绑定sp_unbindefault,dropdefault)。
□sp-nbindefault*S*;
LDROFDZFaULTssex_df;|
nr
B消息
已解除了却肖其默认11之间的绑直
实验中出现的问题以及解决方案(对于未解决问题请将问题列出来)
除了标题内容以外,该部分内容中还可以写对于实验的一些感受,建议,意见等。
问题1:
建立数据库关系图时报错
L一k丄
MicrosoftSQLServerManagementStudio
解决方法:
数据库属性->文件->所有者将自己的电脑账户设置成所有者
7宙屮-曲
问题2:
添加了其他用户,但无法用其登录在使用sql2008的时候,想利用windows身份集成和sqlserver验证模式,但是登录的时候
提示:
已成功与服务器建立连接,但是在登录过程中发生错误。
(provider:
共享内存提供程序
error:
0-管道的另一端上无任何进程。
)解决方式如下:
首先选中服务器(右键)->属性->安全性->服务器身份验证修改为"SQLSERVER和
WINDOWS身份验证模式"
其次展开服务器上的”安全性"->登陆名->选中SA登陆帐号(右键)->状态->登陆修改为启用最后打开‘程序'-所‘有程序'-M‘icrosoftSQLServer2008'-配‘置工具'-S‘QLServer配
置管理器’,在弹出的窗体中,找到SQLServer2008网络配置’,
把MSSQLSERVER的协议下的NamedPipes”和TCP/IP”启动,然后重新启动Microsoft
SQLServer2008即可。
批阅者:
批阅日期:
实验成绩:
批注:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 实验 报告 数据 完整性 安全性 控制
![提示](https://static.bdocx.com/images/bang_tan.gif)