数据库实验报告4

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库实验报告4

《数据库原理》实验报告

题目:实验四视图与索引学号姓名班级日期Xxxx Xx xxxxx 2016.10.20

一. 实验内容、步骤以及结果

1.在Student数据库中,利用图形用户界面,创建一个选修了“数据库原理”课程并且是

1986年出生的学生的视图,视图中包括学号,性别,成绩三个信息。

2.用两种不同的SQL语句创建第五版教材第三章第9题中要求的视图(视图名:V_SPJ)

方法一:

create view V_SP

as

select sno,pno,qty

from spj

where spj.jno in

(select jno from j where j.jname='

三建')

方法二:

create view V_SPJ

as

select sno,pno,qty from spj,j

where j.jno=spj.jno and j.jname='三建'

INTO V_SPJ(SNO,PNO,QTY)

VALUES( 's5','p3',900)

提示:

-SPJ表中JNO允许为空时,数据可以插入基本表,此时JNO为NULL,由

于JNO为NULL,所以视图中没有该

条数据。

-SPJ表中JNO不能为空时,可以使用instead of触发器实现。

(1)修改视图V_SPJ中的任意一条数据的供

应数量。

update

V_SPJ set qty=111

where sno='s1' and pno='p1'

(2)删除视图V_SPJ中的任意一条数据(注意

所创建视图可以视图消解时,才能正常删除,否则会删除失败;也可以考虑用

instead of触发器实现)。

DELETE

V_SPJ

where sno='s1' and pno='p1' and qty=111

用instead of触发器实现

CREATE TRIGGER trdV_SPJ

ON V_SPJ

INSTEAD OF DELETE

AS

BEGIN

Delete from V_SPJ

WHERE sno='s1' and pno='p1' and qty=111

END

可以看到s1、p1、111已将被删除了

3.用图形用户界面对Student数据库中C表的Cno字段创建一个降序排列的唯一索引,索引名称IX_CNo。(5分)

4.使用SQL语句对Student数据库完成以下的索引操作。(15分,每题5分)

(1)在C表的CName属性上创建一个非唯一性

的聚簇索引,索引名IX_CName。

CREATE CLUSTER INDEX IX_CName

ON C(CName)

(提示:创建这个聚簇索引之前,需要首先删除C表的主键约束。SQL Server中,给某张表指

定主键时,会自动创建为主属性一个聚簇索引。)

(2)在SC表上创建一个名为IX_Cnosno的非

聚簇复合索引,该索引是针对sno,cno属性集建立的升序索引。

CREATE INDEX IX_Cnosno

ON SC(sno ASC,cno ASC)

(3)删除C表的索引IX_CName。

DROP INDEX IX_CName ON C

5.自己设计一个实验验证索引对数据库查询效率的提升作用。(40分)

(提示:需要数据量比较大的情况下才容易进行对比)

1、创建表:

CREATE TABLE [dbo].

[Article](

[Id] [int] IDENTITY(1,1) NOT FOR

REPLICATION NOT NULL,

[MsId] [int] NOT NULL,

[Title] [nvarchar](96) NOT NULL, [TitleBak] [nvarchar](96) NOT NULL,

[Summary] [nvarchar](512) NOT NULL,

[SummaryImageUrl] [nvarchar](256) NOT

NULL,

[Tag] [nvarchar](50) NOT NULL, [ArticleChannel_Id] [int] NOT NULL, [ArticleCategory_Id] [int] NOT NULL, [IsApproved] [bit] NOT NULL,

[Creator_Id] [int] NOT NULL, [CreatedDateTime] [datetime] NOT NULL, [ModifiedDateTime] [datetime] NOT NULL, [ViewCount] [int] NOT NULL, [ReplyCount] [int] NOT NULL, [DiggCount] [int] NOT NULL, [FavoriteCount] [int] NOT NULL, [LastReplyUser_Id] [int] NOT NULL, [LastReplyDateTime] [datetime] NOT NULL, [RightType] [int] NOT NULL, [IsDisplayContent] [bit] NOT NULL, [IsSensitive] [bit] NOT NULL, [Source] [int] NOT NULL,

CONSTRAINT [PK_Articles]

PRIMARY KEY CLUSTERED (

相关文档
最新文档