实验6索引与视图

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

实验6索引与视图实验名称索引与视图(2课时)实验日期

使用设备硬件:电脑一台

软件:Windows、SQL server 2005

实验地点

实验目的1、掌握sql建立索引的二种方法,即在基本表中建立和用命令方式建立;掌握删除索引的方法。

2、掌握sql视图建立、修改和删除。

实验内容1、为student数据库中的Students,Courses,Reports三个表建立索引。其中Students 表按Sno(学号)升序建立唯一索引,Courses表按Cno(课程号)升序建立唯一索引,Reports表按Sno(学号)升序和Cno(课程号)号降序建立唯一索引。

Use student

create unique index Stu_Sno

on students(Sno)

create unique index Cou_Cno

on Courses(Cno)

create unique index Rep_SCno

on Reports column Sno,Cno desc

2、在基本表Students的Sname(姓名)和Sno(学号)列上建立一个聚簇索引,而且Students 中的物理记录将按照Sname值和Sno值的升序存放。

create clustered index Stud_SS

on students(Sname,So)

3、删除基本表Reports上的Rep_SCno索引。

Drop index Reports.Rep_SCno

4、建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。

Create view C_Student

As

Select Sno,Sname,Sage,Sdept

From students

Where Sdept=’数学’

With check option

5、建立学生的学号(Sno)、姓名(Sname)、选修课程名(Cname)及成绩(Grade)的视图。

本视图由三个基本表的连接操作导出。

Create view Student_CR

As

SelectS.Sno,S.Sname,ame,R.Grade

From students as S,Course C,Reports R

where S.Sno=R,Sno and o=o

6、定义一个反映学生出生年份的视图。

Create view stu_y

As

Select Sno,出生年份=cast((year(getdata())-Sage) as varchar(4))+’年’

form students

7、删除视图Student_CR。

Drop view Student_CR

8、在数学系的学生视图C_Student中找出年龄(Sage)小于20岁的学生姓名(Sname)和

年龄(Sage)。

Select Sname ,Sno from C_Student where Sage=20

9、在Student_CR视图中查询成绩在85分以上的学生学号(Sno)、姓名(Sname)和课程

名称(Cname)。

Select Sno,Sname,Cname from Student_CR where Grade=85

10、将数学系学生视图C_Student中学号为S05的学生姓名改为“黄海”。

Updata C_Student

Set Sname=’黄海’

Where Sno=’S05’

11、向数学系学生视图C_Student中插入一个新的学生记录,其中学号为“S09”,姓

名为“王海”,年龄为20岁。

Insert into C_Student(Sno,Sname,Sage,Sdept)

Values(‘S09’,’黄海’,20,‘数学’)

12、删除数学系学生视图C_Student中学号为“S09”的记录。

Delete from C_Student

Where Sno=’S09’

实验心得

教师评语优良中及格不及格批改日期

相关文档
最新文档