- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验报告
课程名称
数据库原理
实验
成绩
实验名称
实验4 视图操作、数据完整性定义与检查
学号
姓名
班级
B100508
日期
2012/11/1
实验目的:
1.掌握视图定义及其查询。
2.掌握用数据完整性约束的定义及违约处理。
实验条件:
微机1台、SQL Server 2005
实验内容与步骤:
一、现有“零件供应”数据库,其中包含3个表:
供应商(供应商号,名称,电话,所在地)
零件(零件号,零件名,单价)
供应(供应商号,零件号,数量)
在该数据库中,建立一个表示供应商供应零件情况的视图SP,包括三个表中所有的列,写出创建该视图的语句(建议将视图的列名定义为英文,如PNO)。
2.在视图SP中完成下列查询,写出对应的查询语句:
(1)统计每种零件(零件号)及其供应总量。
(2)查询北京地区的供应商及其供应的零件号、零件名、单价及其数量。
二、假设在“职工信息”数据库有下面两个关系:
职工(职工号,姓名,年龄,职务,工资,部门号),其中职工号为主码;
部门(部门号,名称,经理名,电话),其中部门号为主码。
用SSMS创建“职工信息”数据库。
2.如下给出了创建“部门”表的CREATE TABLE语句,请修改该语句,补充其主码定义,并定义Deptname列非空且唯一,然后执行该语句。
create table dept
(
deptno char(2) primary key,
deptname varchar(20) not null unique,
manager varchar(10),
phone char(15)
);
3.如下给出了创建“职工”表的CREATE TABLE语句,请修改该语句,补充其主码定义、参照完整性定义,并定义职工年龄不得小于18岁或大于60岁,然后执行该语句。
create table emp
(
empno char(4) primary key,
ename varchar(10),
age tinyint check(age=18 and age=60),
job varchar(9),
sala int,
deptno char(2),
foreign key (deptno) references dept(deptno)
);
4.顺序执行如下语句,记录其执行成功或失败,如果失败,说明失败的原因
(1)INSERT INTO DEPT VALUES(01,销售部,null,null)
(2)INSERT INTO DEPT VALUES(02,生产部,null,null)
成功:
(3)INSERT INTO DEPT VALUES(01,计划处,null,null)
失败:违反了实体完整性的主键唯一原则。
(4)INSERT INTO DEPT VALUES(03,null,null,null)
失败:违反了自定义完整性的not null原则。
(5)INSERT INTO EMP VALUES(0101,章意,20,科员,2000,01)
成功:
(6)INSERT INTO EMP VALUES(0301,张欣,30,经理,3000,03)
失败:违反了参照完整性的参照表中的外码必须是为空或者被参照表中主码的某个值。
(7)INSERT INTO EMP VALUES(0201,李佳,17,科员,1500,02)
失败:违反了自定义完整性,年龄必须在18到60岁之间。
(8)DELETE FROM DEPT WHERE Deptno=01
失败:因为会破坏参照完整性。
实验总结(结论或问题分析):
通过本次试验更加熟悉了对数据库的操作。学会了视图的建立与对视图的查询等操作。更加熟悉了数据库的完整性约束,有三种约束分别为 = 1 \* GB3 ①实体完整性 = 2 \* GB3 ②参照完整性 = 3 \* GB3 ③用户自定义完整性,这些完整性使得对数据的操作更加的准确,同时也避免了对数据的非法破坏。使数据库用起来高、效简洁、安全。
原创力文档


文档评论(0)