2024年6月6日发(作者:)
实验三 视图、索引及数据更新
一、 实验目的:
熟练掌握索引的建立与删除的方法,熟练掌握SQL的应用,熟练掌握
数据插入、修改和删除的使用,为后继学习作准备。
二、 实验属性
验证性
三、 实验要求
1. 预习教材第三章,熟悉SQL语句。
2. 熟悉SQL Server环境。
3掌握建立索引的两种方法,即在基本表中建立和用命令方式建立。
4.掌握删除索引的方法。
5.掌握sql视图建立、修改和删除;
6.掌握sql视图查询。
7.掌握sql数据插入、修改和删除语句的一般格式及使用方法。
四、 实验原理
SQL语言应用。
五、 实验步骤
(1) 启动SQL查询分析器;
(2) 选择SQL SERVER后,按确认;
(3) 选择数据库;
(4) 验证如下例子:
1 建立索引
例3.1 为学生选课数据库中的Students,Courses,Reports三个表建立索引。其
中Students表按Sno(学号)升序建唯一索引,Courses表按Cno(课程号)升序建唯一索
引,Reports表按Sno(学号)升序和Cno(课程号)号降序建唯一索引。
例3.2 在基本表Students的Sname(姓名)和Sno(学号)列上建立一个聚簇索引,
而且Students中的物理记录将按照Sname值和Sno值的升序存放。
1
2 删除索引
例3.3 删除基本表Reports上的索引。
3 建立视图
例3.4 建立数学系学生的视图,并要求进行修改和插入操作时仍需保证该视图
只有数学系的学生,视图的属性名为Sno,Sname,Sage,Sdept。
例3.5 建立学生的学号(Sno)、姓名(Sname)、选修课程名(Cname)及成绩
(Grade)的视图。
例3.6 定义一个反映学生出生年份的视图。
4 删除视图
例3.7 删除例3.6建立的视图。
5 查询视图
例3.8 在数学系的学生视图中找出年龄(Sage)小于20岁的学生姓名(Sname)和年
龄(Sage)。
例3.9 在例3.5建立的视图中查询成绩在85分以上的学生学号(Sno)、姓名
(Sname)和课程名称(Cname)。
6 更新视图
例3.10 将数学系学生视图中学号为“S05”的学生姓名改为“黄海”。
例3.11 数学系学生视图中插入一个新的学生记录,其中学号为“S09”,姓名为
2
“王海”,年龄为20岁。
例3.12 删除数学系学生视图中学号为“S09”的记录。
7 插入数据
例3.13 设数据库中已有一个关系History_Student,其关系模式与Students完全
一样,试将关系Students中的所有元组插入到关系History_Student中去。
8 修改数据
例3.14 将学号为“S03”的学生年龄改为22岁,即要修改满足条件的一个元
组的属性值。
例3.15 将所有学生的年龄增加1岁。即要修改多个元组的值。
例3.16 将数学系所有学生的成绩置零。
9 删除数据
例3.17 删除学号为“S04”的学生选修的课号为“C02”的记录。
例3.18 删除所有学生的选课记录。
例3.19 删除数学系所有学生的选课记录。
3


发布评论