实验六 实验报告
更新时间:2023-06-07 16:44:01 阅读量: 实用文档 文档下载
- 实验六实验报告表推荐度:
- 相关推荐
云南大学数据库实验六包崇明
云南大学软件学院
实 验 报 告
课程: 数据库原理与实用技术实验 任课教师: 包崇明 姓名: 匿名 学号: 2013……. 专业: 软件工程 成绩:
实验6 数据库完整性
实验6-1 完整性约束
1、 在学生表上面创建下列CHECK约束
【注】:因为学生表已经存在,所以这里使用添加check约束的方法实现: (1)创建入学日期约束“Enter_University_date_rule”,假定该学校于1923年4月30日创建。要求:入学日期必须大于等于学校创建日期,并且小于等于当前日期
测试语句:
结果(添加的check约束起作用了),如图:
(2)创建学生年龄约束“Age_rule”。要求:学生年龄必须在15~30岁之间
测试语句
结果(添加”Age_rule”成功,并且年龄为’2015/4/27’没有违反”Enter_University_date_rule”约束,进一步说明了(1)中的check约束添加成功,如图:
云南大学数据库实验六包崇明
【注】:考虑到时间关系,下面的部分解答中将会省略测试约束的步骤。 (3)创建学生性别约束“Sex_rule”。要求:性别只能为“男”或“女”
(4)创建学生成绩约束“Score_rule”。要求:学生成绩只能在0~100之间
(5)用图形方法查看学生成绩约束“Score_rule”,截图为:
2、 删除约束Enter_University_date_rule
测试语句:
结果:(更新成功)
云南大学数据库实验六包崇明
3、创建声明式默认约束:在创建表的过程中创建默认约束 (1)创建表“default_example”,表中包含字段pid、name、sex、age。要求设定sex的默认值为“男”、age的默认值为18。 创建default_example表语句:
采用SQL语句进行插入元祖:
执行结果为:(默认值起作用了!!)
(2)插入一条 编号为100 的记录,执行结果为:
(3)修改默认值
一般先删除老的默认约束,再新建一个默认约束方法如下: 删除约束:alter TABLE default_example drop 约束名 新建默认约束:alter TABLE default_example add constraint df_age default(20)
for age
① 删除老的默认约束:
云南大学数据库实验六包崇明
② 新建默认约束:
请将年龄默认值更改为19,执行结果为:
测试语句:
结果(默认年龄被修改为19),如图:
3、 在“学生管理数据库”各个数据表中建立相应的主键、外键、惟一值、以及check约束,
要求:学生的年龄必须是两位数,其中第一位是1或2: (1)学生表【添加主键和年龄约束】:
云南大学数据库实验六包崇明
(2)授课表【添加主键和外键】:
(3)课程表【添加主键】:
(4)成绩表【添加主键和外键】:
云南大学数据库实验六包崇明
第一次添加外键失败,因为两个表中的学号长度不等,所以我需要修改使其相等再添加。
修改后添加外键约束:
我将成绩表中学号的长度由char(20)修改为char(10),这样添加外键约束就能成功:
删除check 约束:
删除学生表中的年龄约束:Age_rule:
云南大学数据库实验六包崇明
5、完成教科书456页如下习题: [7.1]a:
实验6-2 触发器
1、使用触发器
(1)创建一个触发器trig_update,返回对“学生表”进行更新操作后,被更新的记录条数
(2)执行触发器 ① 测试触发器:
云南大学数据库实验六包崇明
② 测试结果:
(3)修改触发器trig_update,除返回被更新的记录条数外,再返回学生的所有基本信息
测试:
结果:
云南大学数据库实验六包崇明
2、使用触发器的两个特殊表:插入表(inserted)和删除表(deleted)。 (1)在“学生表”上创建触发器ins_del_sample,在对学生表进行插入、删除或更新操作后,分别从inserted表和deleted表中查询学生学号、姓名、性别、年龄和所在院系。 (请同学们在做删除操作时,注意备份)
(2)执行插入、删除和更新操作后返回的表有什么区别?
3、使用系统存储过程查看触发器
(1)显示触发器trig_update的一般信息
(2)显示触发器trig_update的源代码
(3)显示“学生表”上所有的依赖关系
(4)显示触发器trig_update所引用的对象
4、难题(注意inserted表和deleted表的使用,并请自己修改数据表)
(1)为“成绩表”创建一个触发器,当向表中插入数据时,如果成绩大于等于60分,该学生就能得到相应的学分,否则,该学生不能得到学分。
(2)为“学生表”创建一个触发器,当删除表中的一个学生资料时,将“成绩表”中的相应记录也删除掉
(3)为“成绩表”创建一个触发器,如果成绩由原来的小于60分更改为大于等于60分时,该学生就得到相应的学分,如果成绩由原来的大于等于60分更改为小于60分,则该学生的相应学分更改为0。
5、完成教科书456页如下习题:
[7.11]a:[7.11]b:
正在阅读:
实验六 实验报告06-07
小企业绩效考核实施的方法和困难07-18
主要基团的红外特征吸收峰05-04
工程经济学分析计算题11-02
四年级下册语文重点课文的课内阅读题03-21
MoS2电催化剂的制备及性能研究-第一章-绪论 - 图文06-20
冷战作文600字07-12
雨水蓄留渗透技术在天津地区的应用研究05-20
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 实验
- 报告
- excel练习题12-排序筛选与分类汇总练习
- 3.4第四课时用一次方程组解决问题
- 《小小的船》(第二课时)说课1105
- 饮用水消毒技术的应用与发展
- RFID部队枪支管理系统
- 青岛版二年级数学下册第四单元教案
- 东方时尚2020年第三季度报告_正文
- 英语教学期末总结
- 好家风好家训征文500字(选登)
- 无线远传抄表系统在供暖中的应用
- 基于ZigBee和RFID技术的智能仓库管理系统研究
- 非焦油911聚氨酯防水涂料
- 关于改善学校建设的建议
- 高三历史必修2第一轮复习资料
- 2012届毕业论文撰写指导手册
- 西宁乡卫生院卫生信息
- 春兰空调故障代码
- 现代教育技术在化学教学中的应用现状分析
- 高中语文成语选择题_50道
- 应付福利费、职工教育经费及生活补助会计处理