数据库实验六(含答案)

更新时间:2024-02-02 16:47:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验六 视图的创建和索引的创建

一. 实验内容 一、视图的创建

1、创建school数据库中,department表中的所有记录的视图View_dep;

2、使用ALTER VIEW语句修改视图

①创建department表中部门名dp_name和部门电话dp_phone的视图View1;

②修改视图View1,从department表中查询dp_no和dp_add字段;格式类似如下:

ALTER VIEW View1

as

select dp_no,dp_add from department

③使用DROP VIEW语句删除视图

3、视图中的数据操作

①用select语句查询视图View_dep中的所有信息;、

②用insert语句向View_dep添加数据记录;

③用update语句修改视图View_dep中的数据,把视图中部门名为口腔科 的电话修改成9999999。

④用delete删除视图中的数据,把View_dep视图中骨科的数据记录删除。

注意:观察,视图数据的修改,基本表的数据是否也发生相应的变化。

二、索引的创建(在school的数据中)

1、使用对象资源管理器为

students表创建一个以sid为索引关键字的惟一聚

簇索引。步骤如下:

(1)打开企业管理器SSMS,依次展开展开“school”“表”students (2)右击“索引“弹出快捷菜单点击“新建索引”,系统将打开“索引窗口”

(3)在窗口中“索引名称”输入索引名、选择索引类型 (4)单击“添加”按钮选择要加入索引键的列表。 (5)单击“确定”按钮索引建成。

2、重命名索引,将索引名改为 stu

(1)打开企业管理器SSMS,依次展开展开“选课系统”“表”“student“ (2)右击“索引“弹出快捷菜单点击“重命名”,将原来索引名改为“ stu”即可

3、删除索引

(1)打开企业管理器SSMS,依次展开展开“选课系统”“表”“student“ (2)右击“索引“弹出快捷菜单点击“删除”即可。

4.用sql语言创建索引,并观察实验结果,思考这些索引的用处 ①为teachers表的tid列创建非聚集索引。

格式请参照如下格式(下面出现的例子仅供参考,请勿复制):

USE db_2008

CREATE INDEX IX_Stu_Sno ON Student (Sno)

②为teachers表的tid列创建唯一聚集索引。

USE db_2008

CREATE UNIQUE CLUSTERED INDEX IX_Stu_Sno1

ON Student (Sno)

一个表不能同时创建多个聚集索引。创建新聚集索引前要删除现有的聚集索引。

③为teachers表的tid列创建组合索引(由tid,tname组成)。

USE db_2008

CREATE INDEX IX_Stu_Sno2

ON Student (Sno,Sname DESC)

④用fillfactor参数为teacher表的tid创建一个填充因子为100的非聚集索引。

USE db_2008

CREATE NONCLUSTERED INDEX IX_Stu_Sno3 ON Student (Sno)

WITH FILLFACTOR = 100

⑤用IGNORE_DUP_KEY参数为teachers表的tid创建唯一聚集索引,并且不能输入重复值。

USE db_2008

CREATE UNIQUE CLUSTERED INDEX IX_Stu_Sno4 ON Student (Sno)

WITH IGNORE_DUP_KEY

每个表中只能创建一个聚集索引

注意如下:每个表中只能创建一个聚集索引,主键列上一定要创建索引,在那些重复值比较多,查询较少的列上不要创建索引。

⑥查看索引信息:

方法一:用SSMS查看,点击表的右键,选设计,弹出表结构设计对话框,右

击该对话框,选择索引/键命令,打开索引/命令对话框,在对话框的左侧选中某个索引,在对话框的右侧就可以查看此索引的信息,并可修改。

方法二:用系统存储过程查看:

use db_2008

EXEC Sp_helpindex Student

方法三:利用系统表查看

USE db_2008

SELECT ID,NAME FROM SYSINDEXES WHERE ID=(SELECT ID FROM

SYSOBJECTS WHERE NAME ='Student')

⑦索引的修改 一、修改索引的名字

USE db_2008

EXEC sp_rename 'Student.IX_Stu_Sno','IX_Stu_Sno1'

二、删除索引

USE db_2008

--判断表中是否有要删除的索引

If EXISTS(Select * from sysindexes where name='IX _Stu_Sno1') Drop Index Student.IX_Stu_Sno1

另外附上SOL数据库安全设置的视频,该视频中包括: 更改登录用户验证方式 创建与删除登录账户 设置服务器角色权限 创建与删除数据库用户

以及数据库中关系的建立和维护的视频

包括一对一关系、一对多关系、多对多关系的建立

希望大家在视图和索引做完之后,自己尝试以上两个内容。

本文来源:https://www.bwwdw.com/article/bkvw.html

Top