文档详情

数据库的完整性和安全性实验报告.doc

发布:2017-01-21约5.36千字共6页下载文档
文本预览下载声明
信息工程学院实验报告 成 绩: 指导老师(签名): 课程名称:《数据库原理》 实验项目名称:数据库的完整性和安全性 一、实 验 目 的: (1)掌握数据库约束的概念; (2)熟悉SQL SERVER 的完整性约束技术。 (3)了解SQL SERVER 的违反完整性处理措施。 (4)了解登录账户的管理理念与具体方法。 (5)了解数据库用户的管理的要则。 (6)了解用户权限管理的内涵与方法。 二、实 验 设 备 与 器 件 Win7 +Sql server 2008 三、实 验 内 容 与 步 骤 (一)测试完整性 运行附录中的SQL语句,理解SQL语句中包含的完整性定义。然后执行下面的SQL语句,看是否能正常运行,若无法执行,请说明原因。 1.对dept表进行数据增删改,并检查完整性规则 Dept已存在的完整性规则如下: dno CHAR(2) PRIMARY KEY dname VARCHAR(20) NOT NULL,UNIQUE (1)增加数据 INSERT INTO dept VALUES(D1,计科系);----正常插入 INSERT INTO dept VALUES(D2,电信系);----正常插入 INSERT INTO dept VALUES(NULL,机械系); ----违反dno主键(NOT NULL)规则 INSERT INTO dept VALUES(D2,机械系); ----违反dno主键(UNIQUE) INSERT INTO dept VALUES(D3,NULL); ----违反dname的NOT NULL规则 INSERT INTO dept VALUES(D3,计科系); ----违反dname的UNIQUE规则 INSERT INTO dept VALUES(D3,机械系);----正常插入 (2)删除数据 DELETE FROM dept WHERE dno=D3;----正常删除 (3)修改数据 UPDATE dept SET dname=计算机科学系 WHERE dno=D1;----正常修改 UPDATE dept SET dname=电信系 WHERE dno=D1; ----违反dname的UNIQUE规则 UPDATE dept SET dname=NULL WHERE dno=D1; 违反dname的UNIQUE规则 2.对student表进行数据增删改,并检查完整性规则 Student已存在完整性规则如下: sno CHAR(2) PRIMARY KEY sname VARCHAR(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 VALUES(S1,张刚,男,20,D1);----正常插入 INSERT INTO student VALUES(S2,李梅,女,21,D2);----正常插入 INSERT INTO student VALUES(S2,吴敏,男,20,D1); ----正常插入 INSERT INTO student VALUES(NULL,吴敏,男,20,D1); ----违反sno 的主键(NOT NULL)规则 INSERT INTO student VALUES(S3,吴敏,男,NULL,D1); 违反sage 的主键(NOT NULL)规则 INSERT INTO student VALUES(S3,吴敏,M,20,D1); 违反ssex 的CHECK规则 INSERT INTO student VALUES(S3,吴敏,男,20,D3); ----正常插入 INSERT INTO student VALUES(S3,吴敏,男,20,D1);----正常插入 (2)删除数据 DELETE FROM student WHERE sno=S3; ----正常删除 (3)修改数据 UPDAT
显示全部
相似文档