- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机科学与技术系
实 验 报 告
专业名称 计算机科学与技术
课程名称 数据库系统及应用
项目名称 数据操作和完整性约束的作用
班 级
学 号
姓 名
实验日期 2015/11/3
一、实验目的与要求:
(一)实验目的
熟练掌握SQL的INSERT、UPDATE和DELETE命令,深刻理解数据完整性约束的作用以及约束机制。
(二)实验要求
(1)读者自行设计各个表的记录,其中院系表至少10条记录、学生表至少30条记录、课程表至少10条记录、教师表至少10条记录、选课表至少50条记录。
(2)使用INSERT命令完成记录的插入操作,要求分别设计若干违反实体完整性、参照完整性和用户自定义完整性和用户定义完整性约束的插入操作,并分析原因。
(3)设计若干删除操作,体会执行删除时检查参照完整性规则的效果(要求涉及拒绝删除、空值删除和级联删除等不同的处理方式)。
(4)设计若干更新操作,体会执行更新操作时检查实体完整性规则、参照完整性规则和用户自定义完整性规则的效果。
(5)在实验报告中要给出具体的记录和设计的操作,并针对各种数据完整性检查给出具体的分析和讨论。
二、实验方法:(代码)
create database 学生管理系统
use 学生管理系统
create table yuanxi
(
编号 smallint primary key,
名称 char(20) unique not null,
负责人 char(10),
办公地点 char(20)
)
--drop table yuanxi
create table xuesheng
(
学号 char(8) primary key,
院系 smallint foreign key references yuanxi(编号),
姓名 char(10) not null,
性别 char(2) check (性别 = 男 or 性别 = 女),
生源 char(6),
状态 char(4) check (状态 = 正常 or 状态 = 留级 or 状态 = 休学 or 状态 = 退学)
)
create table jiaoshi
(
教师编号 char(8) primary key,
院系 smallint foreign key references yuanxi(编号),
姓名 char(10) not null,
性别 char(2) check (性别 = 男 or 性别 = 女),
职称 char(6) check (职称 = 教授 or 职称 = 副教授 or 职称 = 讲师 or 职称 = 助教),
专业 char(10)
)
create table kecheng
(
课程编号 char(8) primary key,
课程名称 char(20) not null,
负责讲师 char(8) foreign key references jiaoshi(教师编号),
学时 smallint not null,
课程性质 char(10) check(课程性质 = 公共基础 or 课程性质 = 专业基础 or 课程性质 = 专业选修 or 课程性质 = 任意选修)
)
create table xuanke
(
学号 char(8)
foreign key references xuesheng(学号),
课程编号 char(8) foreign key references kecheng(课程编号),
成绩 smallint check(成绩 = 0 and 成绩 =100) default null ,
primary key(学号,课程编号)
)
--在院系表中插入10条记录
insert into 院系 values(1,计科系,马主任,36栋)
insert into 院系 values(2,电气系,赵主任,35栋)
insert into 院系 values(3,机械系,钱主任,34栋)
insert into 院系 values(4,园林系,孙主任,33栋)
insert into 院系 values(5,艺术系,李主任,32栋)
insert into 院系 values(6,人文系,周主任,31
文档评论(0)