数据库实验9 数据控制.docx
《数据库实验9 数据控制.docx》由会员分享,可在线阅读,更多相关《数据库实验9 数据控制.docx(32页珍藏版)》请在三一办公上搜索。
1、实验9数据控制(完整性部分)实验91实体完整性一、实验目的学习实体完整性的建立,以及实践违反实体完整性的结果。二、实验内容与要求(1)在数据库 tempdbforintegrity 中建立表 Stu_Union,包括 sno(char(5), sname(char(8), ssex(char(1), sage(int), sdept(char(20)五个列,对 sno 进行 主键约束,并且在没有违反实体完整性的前提下插入并更新一条记录CREATE TABLE Stu_Union(sno char(5),sname char(8),ssex char(1),sage int,sdept char
2、(20)tepdbforintegrity名称匹:数据库常规数据交件事务日志tempdbforintegrit无 (服务器默认设置)状态:(未知)所有者:(未知)创建日期:(未知)太小:(未知)可用空间:(未知)用户数:(未知)备份上次数据库备份:就护维护计划:排序规则名称:上故事舞日志备份:确定帮助.EK商 eapdbf orint egrity中在 H (local)上)的新表ilbuJV.-.解dbi一 MmsdlNorlpublw 3W-JI舒逃wJIn 受躁 J壬?-洋 汶 a 亨 inH没有什么异常,一切正常(2)练习违反实体完整性的插入操作。无法插入(3)练习违反实体完整性的更新
3、操作。insert stu_unionvalues(12345,张海,M,22,信工)(4 ) 在数据库 tempdbforintegrity 中建立表 Scholarship , 包括 M_ID(varchar(30), Stu_id (char(10), R_Money(int)三个。首先向该表插入 数据,练习当与现有的数据环境不等时,无法建立实体完整性以及参照完整 性。create table Scholarship(M_ID varchar(30),Stu_id char(10),R_Money int)insert Scholarshipvalues(what meaning,123
4、45,10000)insert Scholarshipvalues(null,12346,10000)M13年&月22日星期六10:40:01数据座:tempdbFor integrity 应用往序:MS SQLEM - Data Tools*/Scholarship表-木能修涉表。ODBC 错误: MicrosoFtODBC SQL Seruer DriuerSQL Server无*去将 NULL 值插入歹lj M ID,表tempdbForintegrity .dbo.Tmp Scholarship;该列不允 I午空值.insert失败。一MicrosoftODBC SQL Seruer
5、DriuerSQL SeruerH吾句己当冬止。实验92参照完整性一、实验日的学习建立外键,以及利用FOREIGN KEY-REFERENCES子句以及各种约束保证参照完整性。二、实验内容(一)、参照完整性(1)为练习参照完整性,在数据库tempdbforintegrity中建立表Course,包括 cno(char(4), cname(varchar(50), cpoints (int)三列,令 cno 为其主键; 并且在表Course中插入数据。为下面的实验步骤做预先准备。CREATE TABLE COURSE(CNO CHAR(4),CNAME VARCHAR(50) ,CPOINTS
6、INT,PRIMARY KEY(CNO)insert coursevalues(1,数据库,3)insert coursevalues(2,数学,3)insert coursevalues(3,物理,4)(2) 在数据库 tempdbforintegrity 中,建立表 SC, 包括 sno, cno 及 grade 三列。令sno和cno分别为参照Stu_Union表以及Course表的外键,设定级联删除,并 令(sno, cno)为其主键。在不违反参照完整性的前提下,插入数据。CREATE TABLE SC(CNO CHAR(4),SNO CHAR(5),GRADE INTPRIMARY
7、KEY(CNO,SNO),FOREIGN KEY (CNO) REFERENCES COURSE(CNO),FOREIGN KEY (SNO) REFERENCES STU_UNION(SNO),)INSERT SCVALUES(T,35,76)insert sc(cno,sno,grade)values(2,35,88)insert sc(cno,sno,grade)values(3,35,99)(3) 练习违反参照完整性的插入数据。(4)在Stu_Union中删除数据,练习级联删除。DELETEFROM STU_UNIONWHERE SNO=35服务器:.消息京T,缀别1&状态1,行1.,
8、.DELETE 语句与 COLNMN REFERENCE 约束FK_SC_sno_1DE57479冲突。该冲突发生干数据库temp dbf or integrity,表SC, column , sno, o 厝句已终止n一一 一一-解决方案:CREATE TABLE SC(CNO CHAR(4),SNO CHAR(5),GRADE INTPRIMARY KEY(CNO,SNO),FOREIGN KEY (CNO) REFERENCES COURSE(CNO)ON DELETE CASCADE,FOREIGN KEY (SNO) REFERENCES STU_UNION(SNO)ON DELET
9、E CASCADE,)DELETEFROM STU_UNION WERE SNO :, 35?所影响的行数为1行)删除成功 (5)在Course中删除数据,练习级联删除。DELETEFROM courseWHERE CNO=1(6)用 alter table 语句将 SC 表中的 on delete cascade 改为 on delete restricto 重新 插入SC的数据。重复本实验中的(4)、(5),观察结果,分析原因。ALTER TABLE SCDROP CONSTRAINT FK_SC_Sno;ALTER TABLE SCADD CONSTRAINT FK_SC_Cno FOR
10、EIGN KEY(Cno) REFERENCES Course(Cno) ON DELETE RESTRICT(7)用 alter table 语句将 SC 表中的 on delete cascade 改为 on delete set NULL o 重新插入SC的数据。重复本实验中的(4)、(5),观察结果,分析原因。alter TABLE SCDROP CONSTRAINT FK_SC_CNOALTERADD CONSTRAINT FK_SC_CNO FOREIGN KEY (CNO)REFERENCES COURSE(CNO) ON DELETE SET NULL(二)、多重级联删除(1)
11、为了练习多重级联删除,建立Stu_Card表,包括card_id (char(14),stu_id, remained_money (decimal(10,2)三列,令 stu_id 为参照 Stu_Union 表的外键,令 card_id为其主键,并插入数据。insert stu_unionvalues20l02,、 yuajnan,M22f IM) goinsert stu_urLions tu_uni onvalues ( 20l03?,王三22/ IM,)goinsert stu_unionvalues 20T04,/ 王四,/M 22/ IM)go|select *from stu
12、unionsnoSn:dJTLHssexsagesdept120101Shanghaif21IM220102yuajnarLM22IM320103王三M22IM420104王四M22IM口网格卸消息批查询完成。QT-201205091440 (8.0)QT-;CREATE TABLE Stu_Card(card_id char(14),sno char(5),remained_money decimal(10,2)primary key(card_id),foreign key(sno)references stu_union(sno)-insert stu_card-values(95588
13、44022312,20101,11111.11)-goinsert stu_cardvalues(9558844022313,20102,15000)goinsert stu_cardvalues(9558844022314,20103,11111)goinsert stu_cardvalues(9558844022315,20104,11112)goselect *from stu_cardXXL-CJ. L d L LL_ U LL U.values(? 9558844022312,/ 20101 11111.11)goinsert stu_cardvalues (? 9558844022
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 实验9 数据控制 实验 数据 控制

链接地址:https://www.31ppt.com/p-5306234.html