资源描述:
《数据库实验报告资料汇总》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、-《数据库原理》实验报告题目:实验四视图与索引学号姓名班级日期XxxxXxxxxxx2016.10.20一.实验内容、步骤以及结果1.在Student数据库中,利用图形用户界面,创建一个选修了“数据库原理”课程并且是1986年出生的学生的视图,视图中包括学号,性别,成绩三个信息。2.用两种不同的SQL语句创建第五版教材第三章第9题中要求的视图(视图名:V_SPJ)方法一:createviewV_SPasselectsno,pno,qtyfromspjwherespj.jnoin(selectjnofromjwh
2、erej.jname='三建')方法二:-createviewV_SPJasselectsno,pno,qtyfromspj,jwherej.jno=spj.jnoandj.jname='三建'1.用SQL语句完成第五版教材第三章第11题中的视图查询(1)找出三建工程项目使用的各种零件代码及其数量。SELECTPNO,QTYFROMV_SP(2)找出供应商S1的供应情况。SELECT*FROMV_SPJWHERESNO='S1'-1.用SQL语句完成视图的数据更新。(1)给视图V_SPJ中增加一条数据。INSE
3、RTINTOV_SPJ(SNO,PNO,QTY)VALUES('s5','p3',900)提示:-SPJ表中JNO允许为空时,数据可以插入基本表,此时JNO为NULL,由于JNO为NULL,所以视图中没有该条数据。-SPJ表中JNO不能为空时,可以使用insteadof触发器实现。(2)修改视图V_SPJ中的任意一条数据的供应数量。updateV_SPJsetqty=111wheresno='s1'andpno='p1'(3)删除视图V_SPJ中的任意一条数据(注意所创建视图可以视图消解时,才能正常删除,否则会
4、删除失败;也可以考虑用insteadof触发器实现)。-DELETEV_SPJwheresno='s1'andpno='p1'andqty=111用insteadof触发器实现CREATETRIGGERtrdV_SPJONV_SPJINSTEADOFDELETEASBEGINDeletefromV_SPJWHEREsno='s1'andpno='p1'andqty=111END可以看到s1、p1、111已将被删除了1.用图形用户界面对Student数据库中C表的Cno字段创建一个降序排列的唯一索引,索引名称IX
5、_CNo。(5分)-1.使用SQL语句对Student数据库完成以下的索引操作。(15分,每题5分)(1)在C表的CName属性上创建一个非唯一性的聚簇索引,索引名IX_CName。CREATECLUSTERINDEXIX_CNameONC(CName)(提示:创建这个聚簇索引之前,需要首先删除C表的主键约束。SQLServer中,给某张表指定主键时,会自动创建为主属性一个聚簇索引。)(2)在SC表上创建一个名为IX_Cnosno的非聚簇复合索引,该索引是针对sno,cno属性集建立的升序索引。CREATEIN
6、DEXIX_CnosnoONSC(snoASC,cnoASC)-(1)删除C表的索引IX_CName。DROPINDEXIX_CNameONC1.自己设计一个实验验证索引对数据库查询效率的提升作用。(40分)(提示:需要数据量比较大的情况下才容易进行对比)1、创建表:CREATETABLE[dbo].[Article]([Id][int]IDENTITY(1,1)NOTFORREPLICATIONNOTNULL,[MsId][int]NOTNULL,[Title][nvarchar](96)NOTNULL,[T
7、itleBak][nvarchar](96)NOTNULL,[Summary][nvarchar](512)NOTNULL,[SummaryImageUrl][nvarchar](256)NOTNULL,[Tag][nvarchar](50)NOTNULL,[ArticleChannel_Id][int]NOTNULL,[ArticleCategory_Id][int]NOTNULL,-[IsApproved][bit]NOTNULL,[Creator_Id][int]NOTNULL,[CreatedDateT
8、ime][datetime]NOTNULL,[ModifiedDateTime][datetime]NOTNULL,[ViewCount][int]NOTNULL,[ReplyCount][int]NOTNULL,[DiggCount][int]NOTNULL,[FavoriteCount][int]NOTNULL,[LastReplyUser_Id][int]NOTNULL,[Las