实验二 表操作和数据完整性定义

实验二 表操作和数据完整性定义

ID:6165463

大小:225.68 KB

页数:7页

时间:2018-01-05

实验二 表操作和数据完整性定义_第1页
实验二 表操作和数据完整性定义_第2页
实验二 表操作和数据完整性定义_第3页
实验二 表操作和数据完整性定义_第4页
实验二 表操作和数据完整性定义_第5页
资源描述:

《实验二 表操作和数据完整性定义》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、洛阳理工学院实验报告系别计算机与信息工程系班级学号姓名课程名称数据库系统应用实验日期实验名称实验二表操作和数据完整性定义成绩实验目的:1.掌握表结构设计中各种数据类型的应用;2.熟练掌握用SSMS和createtable语句创建表与定义完整性约束;3.巩固insert、update、delete语句的使用;4.掌握数据库导入、导出操作和数据库关系图的创建;5.熟练掌握索引与视图的创建和应用。实验条件:连在局域网中的微机1台、SQLServer2008实验内容与步骤:请按顺序完成下面各题:1.创建图书管理数据库XXX(用自己的名字的缩写作为数据库名),按照下面的要

2、求,在其中创建三个表:“图书”、“读者”、“借阅”。(1)各个表应含有如下各个字段,要求为各个字段合理选择数据类型、长度等。图书:书号、ISBN、书名、作者、出版社、出版年、状态、书库读者:借书证号、类别、已借书数、最多借书数、编号、姓名、系别、密码借阅:借书证号、书号、借出日期、还书日期(2)用SSMS创建“图书”表,要求定义主键,为“状态”定义默认值为“未借”,定义一个CHECK约束:图书的状态只能是“借出”、“未借”两种状态之一。(3)用SSMS创建“读者”表,要求定义主键,并定义一个CHECK约束:借书证号必须是6位数字。(4)用CREATETABLE语

3、句创建“借阅”表,要求定义主键和外键。该表的主键是“书号”,外键有两个,一个是“书号”,参照“图书”表的主键,另一个是“借书证号”,参照“读者”表的主键。并定义一个CHECK约束:借书证号必须是6位数字。2.用SSMS向“图书”和“读者”表中分别添加2条记录。3.用insert语句向“借阅”表中添加2条记录。INSERTINTO[dbo].[借阅]([借书证号],[书号],[借出日期],[还书日期])VALUES(111111,1,'2012/11/1','2012/12/1')GO4.执行下面的update语句,说明该语句的作用是:____某个读者借的书数Up

4、date读者set已借书数=(selectcount(*)from借阅where借书证号=读者.借书证号)5.新建数据库new,将数据库XXX中的三个表导出到new中。6.创建books数据库的数据库关系图。7.在数据库XXX中(1)执行语句:ALTERTABLE借阅ADDidintidentity(1,1);回答问题:id列被称为什么列?答:序号列,代表当前是第几列。(2)执行语句:Select*from借阅记录id列中现有哪些值:答:1,2(3)写出delete语句,删除“借阅”表中的第一条记录;deletefrom借阅whereid=1;(4)写出trun

5、catetable语句,删除“借阅”表中全部记录。TRUNCATETABLE借阅;8.附加teaching数据库,在teaching数据库中完成索引操作(1)查看student表上已有哪些索引,记录各个索引的索引名以及其依据的是哪一列。IX_student_1非聚簇唯一索引依据sname列,PK__student__07020F21聚簇索引依据studentno列(2)在student表上新建一个按姓名的非聚集索引,然后在查询分析器中执行下面的语句,查看这些查询的执行计划(并抓图),说明其分别运用了哪些索引。selectstudentno,snamefromst

6、udentwheresnamelike'%王'非聚簇索引Tablesnameselectstudentno,snamefromstudentwherestudentno='0805101聚簇索引PK__student__07020F219.在teaching数据库中完成视图操作(1)执行如下创建视图的语句:Createviewcredit_of_studentasselectstudent.studentno,sname,course.creditfromstudent,score,coursewherestudent.studentno=score.stude

7、ntnoandscore.courseno=course.courseno回答问题:该视图有几个基表?分别是?答:两个;student表和course表(2)执行如下语句,记录是否成功执行,说明其原因:Insertintocredit_of_student(studentno,credit)values('08050288',5);不能:原因:视图或函数'credit_of_student'不可更新,因为修改会影响多个基表。updatecredit_of_studentsetcredit=5wherestudentno='08050203';可以实验总结(结论或

8、问题分析):这次比较难,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。