资源描述:
《数据库实验报告二.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、数据库原理及应用实验报告实验项目:基本表、索引与视图的定义、删除和修改专业班级:计科系班姓名:学号:实验类型:验证20年10月实验项目二一、实验项目名称:SQL基本表查询基本表、索引与视图的定义、删除和修改二、实验项目的目的和任务:使学生熟悉SQLServer的企业管理器的用法,初步了解SQLServer查询分析器的使用方法,熟悉SQLSERVER的常用数据类型,加深对SQL和SQL语言的查询语句的理解。熟练掌握简单表、索引与视图的创建与修改。三、实验内容:1.基本表的建立:a)建立一个“学生表student”
2、,它由学号xh、姓名xm、性别xb、年龄nl、所在系xi五个属性组成,其中学号属性为主属性,并且其值是唯一的。b)建立“课程course”包括课程号kch,课程名称kcmc,先修课程xxkc,学分xf,要求建立主键课程号c)建立“选课表sc”包括学号xh,课程号kch,成绩grade,要求建立主键及与student及sc表联接的外键2.基本表的修改:a)在选课表中增加一列“任课教师rkjs”b)删除选课表中rkjs一列c)将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)
3、改为char(10)d)建立一个临时表,再将其删除3.索引的建立与删除a)在学生表中以学生的姓名建立降序索引b)在课程表中以课程名建立升序,以学分建立降序索引c)删除以上索引4.建立、删除和更新视图a)建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。CREATEVIEWC_StudentASSELECTSno,Sname,Sage,SdeptFROMStudentsWHERESdept=’数学’WITHCHECKOPTION
4、b)删除视图在数学系的学生视图C_Student中找出年龄(Sage)小于20岁的学生姓名(Sname)和年龄(Sage)。SELECTSname,SageFROMC_StudentWHERESage<20;c)更新视图将数学系学生视图C_Student中学号为S05的学生姓名改为“黄海”。删除数学系学生视图C_Student中学号为“S09”的记录。四、实验代码及截图:/*创建数据库*/createdatabasedbwon(name='dbwdata',filename='e:shujukudbwdat
5、a.mdf')logon(name='dbwdatalog',filename='e:shujukudbwdatalog.ldf')实验截图如下:/*创建学生信息表*/createtablestudent(xhchar(20)primarykey,xmchar(8),xbchar(2),nlint,xichar(20))实验截图如下:建立的表student如下所示:表student打开填写信息如下:/*创建课程表*/createtablecourse(kchchar(10)primarykey,kcmcch
6、ar(20),xxkcchar(30),xfint)实验截图如下:建立的表course如下所示:表course打开填写信息如下:/*创建选课表*/createtablesc(xhchar(20)notnull,kchchar(10)notnull,gradefloatcheck(grade>=0andgrade<=100),foreignkey(xh)referencesstudent(xh),foreignkey(kch)referencescourse(kch))实验截图如下:建立的表sc如下所示:表sc打
7、开填写信息如下:/*在选课表中增加一列'任课教师rkjs'*/altertablescaddrkjschar(20)实验截图如下:/*在选课表中删除'任课教师rkjs'一列*/altertablescdropcolumnrkjs实验截图如下:/*将student表的xm一列允许空值的属性更改成不允许为空,将列xm的长度由char(8)改为char(10)*/altertablestudentaltercolumnxmchar(10)notnull实验截图如下:/*建立一个临时表*/createtable#lsb
8、(idchar(20)primarykeynotnull,passchar(20))实验截图如下:/*删除临时表*/droptable#lsb实验截图如下:/*在学生表中以学生的姓名建立降序索引*/createuniqueindexxsxmonstudent(xmdesc)实验截图如下:/*在课程表中以课程名建立升序,以学分建立降序索引*/createindexkcmc@xfoncou