- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
攀枝花学院数据库完整性约束数据库实验2
攀枝花学院
Panzhihua University
实验报告册
实验二
数据库完整性约束实验
2013 ~2014 学年度第 2 学期
课 程 名 称 数据库原理与应用
授 课 教 师 刘继光
教 师 职 务 副教授
学 生 姓 名
学 号
教 学 单 位 数学与计算机学院
课题(项目)名称: 数据库完整性约束实验 计划学时: 实验类型: 1.演示性□ 2.验证性□ 3.综合性□ 4.设计性□ 5.其它□ 授课日期: 年 月 日 第 周 星期 第 节 实验二
实验名称:数据库完整性约束实验
实验学时:2
实验目的:
数据库完整性是保证数据库中数据正确性的重要手段,通过实验,使学生加深对数据库完整性的基本概念的理解与掌握,并能够熟练创建、修改、删除各类完整性约束,从而达到灵活应用的目的。
实体完整性约束验证;
引用完整性验证;
唯一约束;
非空约束;
缺省值;
检查约束;
实验内容及要求:
数据库完整性约束试验。
试验所使用的数据库表结构如下:
Student(学生记录表)
SNO(学号) CHAR(10) PRIMARY KEY
SNAME(姓名) VARCHAR(16)
SEX(性别)
SC(学生选课成绩表)
SNO(学号) CHAR(7) PRIMARY KEY
CNO(课程号) CHAR(4) PRIMARY KEY
GRADE(成绩) INT
使用查询分析器,建立数据库SC,数据库参数默认。建立Student、Course、SC数据库表,并完成下面题目:
1、“课程名”属性必须取唯一值。
2、“课程名”也不能取空值。
3、“学分”属性只能取值{1,2,3,4},如果没有输入学分信息,学分的缺省值为3。
4、“学号”的前两位为“20”,第三位与第四位为数字。
5、“GRADE”大于等于0并且小于等于100。
6、SC中,SNO、CNO为外键,请建立外键约束。
create table student
(
sno char(10) primary key,
sname varchar(16),
sex varchar(2),
dept varchar(20),
age smallint
)
create table course
(
cno char(4) primary key,
cname varchar(32) not null,
score smallint not null
)
create table sc
(
sno char(10) primary key,
cno char(4) ,
grade int check (grade = 0 and grade = 100),
)
1、“课程名”属性必须取唯一值。
法一 alter table course add unique(cname)
或者 alter table course add constraint un unique(cname)
2、“课程名”也不能取空值。
alter table course alter column cname varchar(32) not null
3、“学分”属性只能取值{1,2,3,4},如果没有输入学分信息,学分的缺省值为3。
法一 alter table course add constraint re check (score in (1, 2, 3, 4))
alter table course add default 3 for score
法二 drop table course
create table course
(
cno char(4) primary key,
cname varchar(32) not null,
score smallint not null default 3 check (score in (1,2,3,4))
)
法三 drop table course
create table course
(
cno char(4) primary key,
cname varchar(32) not null,
文档评论(0)