实验九 视图和索引及数据关系图

合集下载

SQL server 2008数据库实验

SQL server 2008数据库实验
创建触发器update。
实验九.视图和索引及数据库关系图
视图操作
创建视图view_s_grade
修改视图只显示分数大于80的人
创建索引
实验十. sql server事务管理
定义一个事务,更改s表的数据
事务处理,一条有误两条都不写入数据库
事务处理
定义一个事务,向表插入一段数据再删除,结果没有删除该数据
向s表插入数据Βιβλιοθήκη 在sc表中删除s13 c10的记录。
实验四.数据库约束实验
利用数据库关系图管理主键。
利用表设计管理主键。
利用T-SQL定义主键。
唯一性约束的设置与删除。
实验五. select数据查询
查询数学系的学生的学号和姓名。
查询每个学生的情况和所选的课程号
查询学了体育的学生的学号和姓名
学了体育的比此课程平均成绩大的学号和成绩
实验十一. Sql server安全管理
创建新的账户和用户
创建登陆账户
创建数据库用户
把查询表s的权限授给login_account_user
删除数据用户
删除登陆账户
实验十二.数据库的备份和恢复
分离数据库
分离数据库
数据库的附加
数据库备份
还原数据库
实验十三.数据的导入导出
数据的导出
数据的导入
实验一.SQL server 2008基本服务和信息
创建test表和索引
查询test表的信息
查询column的id
查看表分区信息
实验二.数据库的创建和管理
数据库的创建
数据库的创建
修改数据库属性
删除数据库
实验三.数据表的创建和管理
建立Dept-info表

视图和索引的创建和使用实验报告

视图和索引的创建和使用实验报告

信息工程学院实验报告课程名称:《数据库原理》Array实验项目名称:视图和索引的创建和使用一、实验目的:(1)掌握创建视图的SQL语句的用法。

(2)掌握修改视图的方法。

(3)熟悉视图更新与基本表更新的区别与联系;认识视图的作用。

(4)熟悉索引的作用,以及不同类型索引的区别。

(5)学会用T-SQL语句对表创建和删除索引二、实验设备与器件Win7 +Sql server 2008三、实验内容与步骤利用备份文件school,还原数据库,然后完成以下实验内容:(1)用T-SQL语句,定义信息系学生基本情况视图V_IS。

(2)用T-SQL语句,将Student,Course 和SC表中学生的学号,姓名,课程号,课程名,成绩定义为视图V_S_C_G。

(3)用T-SQL语句,将各系学生人数,平均年龄定义为视图V_NUM_AVG。

(4)用T-SQL语句,定义一个反映学生出生年份的视图V_YEAR。

(5)用T-SQL语句,将各位学生学号、选修课程的门数及平均成绩定义为视图V_AVG_S_G。

(6)用T-SQL语句,将各门课程的课程号、选修人数及平均成绩定义为视图V_AVG_C_G。

(7)用T-SQL语句完成以下视图操作,查看结果,并分析原因。

①通过视图V_IS,将学号为“200215125”的学生姓名更改为“张小立”,并查看结果;②通过视图V_IS,新增加一个学生记录 ('200215126','黄笑',19, '男','IS'),并查看结果。

③通过视图V_IS,新增加一个学生记录 ('200215127','李霞',19, '女','MA'),并查看结果。

④通过视图V_IS,删除学号为“200215126”的学生信息,并查看结果。

⑤通过视图V_S_C_G,将学号“200215122”的姓名改为“刘晓晨”,能否实现?若无法实现说明原因。

数据库的索引与视图

数据库的索引与视图

B-Tree索引
▪ B+Tree:每一个叶子节点都包含指向下一个叶子节点的指针,从 而方便叶子节点的范围遍历。存放于索引页面中
▪ B-Tree通常意味着所有的值都是按顺序存储的,并且每一个叶子 页到根的距离相同,很适合查找范围数据。
采用一定的哈希算法,把键值换算成新的哈希值, 检索时不需要类似B+树那样从根节点到叶子节点逐级查找,只需 一次哈希算法即可立刻定位到相应的位置,速度非常快
▪ 什么时候要用到视图
如果某个查询结果出现的非常频繁,也就是,要经常拿这个查询结果 来做子查询
视图
视图的作用
▪ 简化查询语句 ▪ 可以进行权限控制 ▪ 大数据分表时可以用到
视图
Tree索引高
存储 类型
索引失效
▪ Where子句的查询条件中有!= ▪ Where子句使用了mysql函数时,索引无效 ▪ 在使用like进行匹配查询,有左通配符%时,索引无效 ▪ 使用or语句来连接条件 ▪ 当索引列有大量重复时,sql查询可能不会去利用索引
存储 类型
视图
▪ 什么是视图
视图是由查询结果形成的一张虚拟表。
索引
为了使索引的使用效率更高,在创建索引的时候必须 考虑在哪些字段上创建索引和创建什么类型的索引
▪ 最适合建立索引的列,是出现在where子句中的列,而非select 关键字后面的列
▪ 考虑某列中值的分布。索引的列的基数越大,索引的效果越好 ▪ 使用短索引 ▪ 不要过度索引 ▪ 最左前缀匹配原则
设计 原则
存储 类型
B+树索引和哈希索引的明显区别
▪ Hash 索引仅仅能满足"=","IN"和"<=>"查询,不能使用范围查询 ▪ Hash 索引无法被用来避免数据的排序操作 ▪ Hash 索引不能利用部分索引键查询 ▪ Hash 索引在任何时候都不能避免表扫描 ▪ Hash 索引遇到大量Hash值相等的情况后性能并不一定就会比B-

实验六:关系图、索引和视图的定义及维护

实验六:关系图、索引和视图的定义及维护

实验六:关系图、索引和视图的定义及维护一、实验目的1.掌握创建关系图的方法。

2.掌握创建、查看和删除索引的操作和方法。

3.理解视图的含义,能使用SQL Server企业管理器创建视图并对其进行管理。

二、实验环境已安装SQL Server 企业版的计算机(120台);具有局域网环境,有固定IP;三、实验学时2学时四、实验要求1.索引和视图的创建和管理也可以用查询分析器实现,参照课本上的相关Transact-SQL命令,写出对应的Transact-SQL实现代码。

2.将视图的创建、修改、删除过程与实验二中表的创建、修改、和删除进行对照,看看有什么相同点和不同点。

3.完成实验报告;五、实验内容及步骤以系统管理员身份登录到SQL Server服务器,在SQL Server2005界面中实现第1题操作,其余题目用SQL Server2005界面及T-SQL 语句实现:1.使用创建数据库关系图向导为学生选课数据库中的Student表,Course表,SC表创建关系图。

2.为Student表创建一个基于Sname(姓名)的按降序排列的聚簇索引Stusname。

CREATE CLUSTERED INDEX Stusname ONStudent(Sname DESC)3.为学生—课程数据库中的Student,Course,SC 3 个表建立索引。

其中student按学号升序建唯一索引,course按课程号升序建唯一索引,SC按学号升序和课程号降序建唯一索引,索引名称分别为Stusno,Coucno,Scno。

CREATE UNIQUE INDEX Stusno ON Student(Sno);CREATE UNIQUE INDEX Coucno ON Course(Cno);CREATE UNIQUE INDEX SCno ON SC(Sno ASC,Cno DESC);4.删除 Student表中的Stusname索引。

实验九 视图和索引 实验指导

实验九 视图和索引 实验指导

实验九视图和索引实验指导一、视图视图是SQL Server中重要的数据库对象。

视图常用于集中、简化和定制显示数据库的数据信息,为用户从多种角度观察数据库中的数据提方便。

为了屏蔽数据的复杂性、简化用户对数据的操作、控制用户访问数据的权限、保护数据安全,常为不同的用户创建不同的视图。

1. 视图的基本概念视图是从一个或多个表或视图导出的表;其结构和数据是建立在对表的查询基础上的。

和表一样,视图也是包括几个被定义的数据列和多个数据行。

但就本质而言,这些数据列和数据行来源于其所引用的表。

所以,视图不是真实存在的基础表,而是一张虚表。

视图所对应的数据并不实际地以视图结构存储在数据库中,而是存储在视图所引用的表中。

视图一经定义便存储在数据库中,与其相对应的数据并没有像表那样又在数据库中再存储一份。

通过视图看到的数据,只是存放在基本表中的数据。

对视图的操作与对表的操作一样,可以对其进行查询、修改(有一定的限制)、删除。

当对通过视图看到的数据进行修改时,相应的基本表的数据也要发生变化,同时若基本表的数据发生变化,则这种变化也可以自动地反映到视图中。

可以将任何符合视图创建规定的SELCT语句命名和存储为视图。

在视图中北查询的表称为基表。

视图的常见实例如下。

●一个基表的行或列的于集。

●两个或多个表的合并。

●两个或多个表的联接。

●一个基表的统计总汇。

●另外一个视图的子集。

●视图和基表的混合。

2. 创建视图在SQL Server2005中创建视图,创建者必须拥有创建视图的权限,并且对视图中引用的基表或视图有许可权。

此外,创建视图前还应该注意以下几点:●只能在当前数据库中创建视图。

如果使用分布式查询,视图所引用的基表和视图可以存在于其他数据库或其他服务器中。

●在一个视图中最多引用1024列,视图中记录的行数限制由基表中的记录数目决定。

●视图的名称必须遵循标识符的命名规则,且对每个架构都必须唯一,并且该名称不得与该架构包含的任何表的名称相同。

第9讲 视图和索引

第9讲 视图和索引

式看同一个数据集内容,体现数据库的“个性化”
要求.
按需求划分数据
使用视图, 可以对表中的数据进行横向或纵向的分割, 使所展现的数据更为简单和实用. 通过在定义 select 语句时选择不同的列,可以很方便地 实现对一个或多个表的纵向分割, 以便集中关注所要关心 的数据列. 例如,有一个结构复杂的表,包含了20列数据,但是 最终用户只希望获取其中5列数据. 这时, 就可以在这5列 数据上建立视图而屏蔽多余列. 同样,通过使用 where 子句横向分割数据, 可以限制 展现数据的数量. 例如, 在数据库中有一张存有所有销售记录的表,而用 户总是需要查询当天的销售记录. 在这种情况下,就可以 在该表上定义一个视图,并在 where 添加查询条件,使视 图中反馈的数据总是当天的记录而屏蔽掉过去的销售记录.
删除和修改视图
删除视图的语句是: DROP VIEW view_name 与删除表不同的是,删除视图只是删除了 视图的定义,而通过视图显示的所有数据依然 在表中存在,并没有被删除. 在默认的情况下,只有视图的拥有者,或 者拥有 db_owner, db_ddladmin, sysadmin 角色的用户才可以删除该视图. 与前面的数据库对象一样, 对视图的删除、 修改、重命名等操作都可以使用T-SQL语句和 S视图的操作方式和表现形式与表非常相似. 用户可以像对表一样, 对视图授予或撤销访问许 可权, 从而在限制表用户的基础上进一步限制视 图的用户. 视图所引用的表的访问权限与视图的权限设 置是相互不影响的. 另外, 视图的定义语句也可 加密. 视图的机制使得数据库管理员可以针对不同 的用户制定不同的视图. 通过定义适当 SQL查询 语句,管理员可以很方便地把机密数据遮蔽起来. 例如,员工信息表中的工资信息.

实验 视图、索引与数据库关系图

实验 视图、索引与数据库关系图

实验名称:实验五视图、索引与数据库关系图班级学号姓名日期所在院系指导老师成绩一、试验目的使学生掌握SQL Server中的视图创建、查看、修改和删除的方法;索引的创建和删除的方法;数据库关系图的实现方法。

加深对视图和SQL Server数据库关系图的理解。

二、实验内容(1)创建、查看、修改和删除视图。

(2)创建、删除索引文件。

(3)创建数据库关系图。

三、试验步骤1)视图操作(1)创建视图。

使用SQL Server Management Studio直接创建,步骤如下:1.单击数据库前面的+号,然后再单击“学生选课”数据库前面的+号,右击“视图”,在弹出的快捷菜单中选择“新建视图”命令,弹出“添加表”对话框。

如图5.1所示图5.1 “添加表”对话框2.在“添加表”对话框中,添加视图数据来源的表,这里添加三张表,分别是student、course和sc表。

添加表后,单击添加表对话框中的“关闭”按钮,出现创建视图界面。

如图5.2所示图5.2添加字段前的效果图3.如果要在视图中显示某些表的某个字段,只需单击其字段前的复选框即可,同时在中间列中会显示该字段,在代码区中会看到具体实现的代码。

4.如果要查看视图,单击常用工具栏中的“执行”按钮,就可以看到视图的数据显示,如由字段student.sno、sname、cname、grade生成的视图效果。

如图5.3所示图5.3 生成视图效果图5.在创建视图中还可以为字段添加列名、进行排序、添加多个筛选条件。

6.单击常用工具栏中的“保存”按钮,就可以弹出保存视图提示对话框,输入视图名字即可,为view_stu_grade。

(2)修改视图。

视图创建好后,就可以利用它进行查询信息了。

如果发现视图的结构不能很好的满足要求,还可以对它进行修改。

使用SQL Server Management Studio直接修改,步骤如下:1.在SQL Server Management Studio中,选择服务器、数据库、并使数据库展开,再单击“视图”前面的+,就可以看到已存在的视图了。

实验报告五 视图与索引

实验报告五 视图与索引

实验五视图与索引一.实验目的1.学会使用企业管理器建立视图与索引2.掌握使用SQL语句建立视图与索引二.实验内容1.使用企业管理器建立视图索引2.使用SQL语句建立视图索引三.实验准备1.复习与本次实验内容相关知识2.对本次实验中要求自己完成的部分做好准备四.实验步骤1.用企业管理器建立一个基于学生表、课程表、成绩表的视图,要求该视图显示学号、姓名、课程、成绩o启动企业管理器、注册、连接o"新建视如下图所示o在新视图窗口内的关系图窗格内右击鼠标,弹出的菜单即为视图设计菜单,执行"添加表(B)...",如下图所示再在添加表对话框中选择SCORES表,再单击添加按钮。

依此操作,分别添加STUDENT、COURSES表,单击关闭按钮。

再在关系窗格内,拖动STUDENT表的"SID"至SCORES的STUDENT_ID,拖动COURSES表的"CNO"至SCORES的COURSE_ID,再分别选中STUDENT表的"SID","NAME"列(列前的复选框),COURSES表的"COURSE"列以及SCORES表的"SCORE"列,然后单击"!"按钮,显示视图结果,如下图所示:单击保存按钮,将视图保存为V_SCORES,单击确定.2.用查询分析器建立一个基于学生表、班级表的学生视图(V_STUDENTS),包括学号、姓名、班级、系,SQL语句如下:CREATE VIEW dbo.V_STUDENTSASSELECT dbo.U_STUDENTS.ID, dbo.U_,dbo.U_CLASSES.CLASS,dbo.U_CLASSES.DEPARTMENTFROM dbo.U_STUDENTS INNER JOINdbo.U_CLASSES ON dbo.U_STUDENTS.CLASS_ID = dbo.U_CLASSES.ID3.自己写一个SQL语句建立一个基于课程表的视图(V_COURSES),要求显示课程编号.课程名、学分。

第9章视图与索引精品PPT课件

第9章视图与索引精品PPT课件

FROM book1
视图中的数据行和列都来自于基本表,是在 视图被引用时动态生成的
视图由视图名和视图定义两部分组成 可以在视图的基础上再定义视图。
9.1.2 视图的作用
使用视图主要有以下几个方面的作用: (P132-133页) (1)为用户集中数据,简化用户的数据查询和处理 (2)简化用户权限的管理,也增加了安全性 (3)屏蔽数据库的复杂性 (4)可重新组织数据以便输出到其他应用程序中
第9章 视图与索引
教学提示:在对数据库进行操作时,用 户总是希望能够快速并准确得到所要求 的数据,而适当使用视图和索引可以提 高数据存取的性能及操作速度,加快查 询数据的效率。
教学目标:本章将详细介绍视图和索引 的概念,以及创建和管理索引和视图的 方法。
9.1 视图的基础知识
1.什么是视图? 2.视图的作用、优点?
9.1.3 视图的类型 SQL Server2008中,视图可以分为标准视图、索引视图和 分区视图。
1. 标准视图(本阶段主要学习使用)
标准视图组合了一个或多个表中的数据,可以获得使用视 图的大多数好处,可以实现对数据库的查询、修改和删除等基 本操作。
2. 索引视图
索引视图是被具体化了的视图,它已经过计算并存储。可 以为视图创建索引,即对视图创建一个唯一的聚集索引。索引 视图可以显著提高某些类型查询的性能。索引视图尤其适于聚 合许多行的查询。但不太适合于经常更新的基本数据集。
GO
CREATE VIEW v_book2
AS SELECT 书名,定价
FROM book2
【例】 使用T-SQL语句创建视图v_bookbycbs,使其能 显示各出版社已出版书的本数(本例学习视图应用——基 本表的统计汇总)

数据库实验报告 索引和视图

数据库实验报告 索引和视图

西北师范大学计算机科学与工程学院学生实验报告2、在student表的studentno和classno列上创建唯一索引UQ-stu,若该索引已存在,则删除后重建。

然后输出student表中的记录,查看输出结果的顺序。

SQL代码:USE teachingGOIF EXISTS(SELECT name FROM sysindexes WHERE name='UQ_stu')DROP INDEX student.UQ_stuGOCREATE NONCLUSTERED INDEX UQ_stu ON student(studentno,classno)GOSELECT*FROM student实验结果:3、修改UQ-stu的索引属性,当执行多行插入操作时出现重复键值,则忽略该记录,且设置填充因子为80%SQL代码:USEteachingGOALTER INDEX UQ_stu ON student REBUILDWITH(PAD_INDEX=ON,FILEFACTOR=80,IGNORE-DUP_KEY=ON)GO实验结果:4、创建一个视图v-teacher,查询“计算机学院”所有教师的信息SQL代码:USE teachingGOCREATE VIEW v_teacherASSELECT*FROM teacherWHERE department='计算机学院'GOSELECT*FROM v_teacher实验结果:5、创建一个视图v-avgstu,查询每个学生的学号、姓名及平均分,并且按照平均分降序排序SQL代码:USE teachingGOCREATE VIEW v_avgstuASSELECT TOP(100)PERCENT student.studentno,studnt.sname,AVG(score.final)AS 'average'FROM student,scoreWHERE student.studentno=score.studentnoAND score.final IS NOT NULLGROUP BY student.studentno,student.snameORDER BY AVG(score.final)DESCGOSELECT*FROM v_avgstu实验结果:6、修改v-avgstu的视图定义,添加WITH CHECK OPTION选项SQL代码:USE teachingGOALTER VIEW v_avgstuASSELECT*FROM teacherWHERE department='计算机学院'WITH CHECK OPTIONGO实验结果:7、通过视图v-avgstu向基表teacher中分别插入数据(‘05039’,‘张馨月’,‘计算机应用’,‘讲师’,‘计算机学院’)和(‘06018’,‘李诚’,‘机械制造’,‘副教授’,‘机械学院’),并查看插入数据的情况SQL代码:USE teachingGOINSERT INTO v_teacherVALUES('05039','张馨月','计算机应用','讲师','计算机学院')INSERT INTO v_teacherVALUES('06018','李诚','机械制造','副教授','机械学院')SELECT*FROM v_teacherSELECT*FROM teacher实验结果:8、通过视图v-teacher将基表teacher中教师编号为05039的教师职称修改为“副教授”SQL代码:USE teachingGOUPDATE v_teacherSET prof='副教授'WHERE teacherno='05039'GOSELECT*FROM teacher实验结果:实验总结:通过本次实验掌握了索引、统计信息和视图等数据库对象的基本概念和基本操作。

第7章数据库索引和视图精品PPT课件

第7章数据库索引和视图精品PPT课件

下列情况不适于建立聚集索引
频繁更改的列。 字节长的列。因为聚集索引的
索引项的值将被所有非聚集索 引作为查找关键字使用,并被 存储在每个非聚集索引的B树的 叶级索引项中。
2020/10/12
17
非聚集索引
非聚集索引与图书后边的术语表类似。 数据存储在一个地方,术语表存储在另 一个地方。而且数据并不按术语表的顺 序存放,但术语表中的每个词在书中都 有确切的位置。
如此上推,直到生成顶层的根节点的索引 页。
2020/10/12
9
建有聚集索引的表的存储结构示意图
eno E01 E02 E03 E04 E05 E06 E07 E08 E09 E10 E11 E12
2020/10/12
数据示例
ename AB AA BB BC CB AS BB AD BD BA CC CA
例4 删除Student表的Sname_ind索 引 DROP INDEX Sname_ind
2020/10/12
28
7.2 视图
7.2.1 概念概念 7.2.2 定义视图 7.2.3 通过视图查询数据 7.2.4 修改和删除视图 7.2.5 视图的作用
2020/10/12
29
7.2.1 基本概念
第7章 索引和视图
7.1 7.2 视图 7.3 物化视图
2020/10/12
1
7.1 索引
7.1.1 索引基本概念 7.1.2 索引的存储结构及分类 7.1.3 创建和删除索引
2020/10/12
2
7.1 索引基本概念
索引与书籍中的目录类似。
索引使对数据的查找不需要对整个表 进行扫描,就可以在其中找到所需数 据。
数 数 数 E03 BB IS

数据库实验报告:视图 和索引

数据库实验报告:视图 和索引

一、实验步骤(一)附加上次实验所创建的数据库“db_Library”,并回顾该数据库的数据表信息。

(二)练习创建和管理视图1、使用管理控制台创建一个名为“计算机系借阅信息_VIEW”的视图,要求显示计算机系读者2011-1-1以后借阅的图书信息,包括“读者姓名”、“图书编号”和“借阅日期”三个字段。

打开sql server管理控制台窗口,打开新建视图对话框。

在添加表中添加tb_borrow和tb_reader表,在选中输出复选框中选中:读者编号,图书编号,借阅日期。

use db_library goselect * from 读者借阅信息_VIEWwhere 所在系='计算机'and 借阅日期>'2011_1_1'2、使用T-SQL语句创建一个名为“读者借阅信息_VIEW”的视图,要求显示所有的读者借阅信息,包括“读者编号”、“姓名”、“系部”、“图书编号”、“图书名称”和“借阅日期”等字段。

use db_library gocreate view 读者借阅信息_VIEW asselect tb_readder.读者编号,tb_reader.姓名,tb_reader所在系,tb_book.图书编号,tb_book.书名,tb_borrow.借阅日期 from tb_reader,tb_borrow,tb_bookwhere tb_reader.读者编号=tb_borrow.读者编号and tb_book.图书编号=tb_borrow.图书编号Select * from读者借阅信息_VIEW3、使用管理控制台查看“读者借阅信息_VIEW”视图的定义信息和依赖的对象。

打开管理控制台,在数据库“db_Library”下的“视图”对象;在左边窗口右击“读者借阅息_VIEW”该视图,在在窗口中选中“查看依赖关系”选项。

4、使用系统存储过程查看“计算机系续借阅信息_VIEW”视图的定义信息和依赖的对象。

实验九 视图和索引及数据关系图

实验九  视图和索引及数据关系图

实验九视图和索引及数据库关系一、实验目的使学生掌握SQL Server中视图的创建、查看、修改和删除方法,掌握索引的创建和删除方法以及数据库关系图的实现方法,加深对视图和SQL Server数据库关系图作用的理解。

二、实验内容(1)创建、查看、修改、和删除视图(2)创建、删除索引文件(3)创建数据库关系图三、实验指导本部分利用数据库JXGL的表S、SC、C中的数据进行实验1.视图操作(1)创建视图。

实验9.1 使用SQL Server Management Studio 直接创建视图。

(4)查看视图,单击“常用”工具栏中的“执行”按钮,就可以看到视图的数据显示。

实验9.2 使用T-SQL语句创建和查看视图语法格式如下:CREATE VIEW view AS select_statement在数据库JXGL中3个表的基础上建立一个视图,取名为view_s_grade。

在数据库引擎查看文档中输入如下代码:(2)修改视图视图在创建好后,就可以利用它查询信息了。

如果用户发现视图的结构不能很好她满足要求,还可以对它进行修改。

实验9.3 使用SQL Server Management Studio 窗口直接修改视图。

2.索引文件的创建与删除索引是一个单独的,物理的数据库结构,是为了加速对表中数据行的查询而创建的一种分散的存储结构(1)创建索引文件实验9.5 使用SQL Server Management Studio 窗口直接创建索引文件。

1.创建索引文件IX_sdept,关键字段为sdept,升序。

在数据库引擎查询文档中输入以下代码:在S表中心字段age创建索引文件IX_age,降序。

代码如下:3.创建数据库关系图如果数据库中的表没有设置主键,那么,用户可以在关系图中先设置主键,然后再建立实体关系。

数据库关系图是数据训架构的图形描述。

实验9.7 数据库JXGL的关系图管理。

索引、视图的定义实验报告

索引、视图的定义实验报告

数据库实验报告题目:索引、视图的定义院系:计算机科学与工程学院班级:120404姓名:张杨学号:20124270第九周周六56节【实验设计】使用企业管理器(1)打开企业管理器,在树状目录中展开数据表"员工数据表"所在的数据库节点TestDB,并选择其下一级节点"表"。

(2)选择表"员工数据表",并单击鼠标右键。

在弹出菜单中选择命令"所有任务〉管理索引",打开"管理索引"对话框。

(3)在"管理索引"对话框中的"数据库"下拉菜单中选择数据库表。

(4)选择"新建"按钮,弹出"新建索引"对话框。

(5)在"新建索引"对话框的"索引名"文本框中输入索引名称"IDX_Name",然后选择字段"姓名"并设置索引属性。

【程序代码】USE TestDBGOCREATE VIEW员工项目(员工编号,员工姓名,项目名称,项目开始日期)ASSELECT a·编号,a·姓名,b·名称,b·开始日期,FROM员工数据表AS a INNER JOIN项目数据表AS bON a·编号=b·负责人WHERE a·编号=b·负责人GO(2)使用INSERT语句通过视图向员工数据表中添加一条记录,要求"姓名"字段值为"马中兴"。

USETestDBGOINSERTINTO 员工项目(员工姓名)VALUES('马中兴')GO(3)使用UPPDATE语句通过视图将第二步中插入记录的员工姓名改为"马中新"。

USETestDBGOUPDATE员工项目SET 项目负责人= '马中新’,WHERE 项目负责人=’马中兴’GO(4)执行系统存储过程 sp_rename将视图更名为"employee_project_VIEW "。

实验报告 3(视图、索引的创建与使用)

实验报告 3(视图、索引的创建与使用)

撰写人姓名:撰写时间:审查人姓名:实验全过程记录一、实验目的1、熟练掌握视图的创建与维护操作,熟练使用视图访问数据;2、熟练掌握索引的创建与维护操作,熟练使用索引以方便查询。

二、实验内容:1、在“对象资源管理器”中使用向导和在在“查询编辑器”中使用T-SQL语句创建视图,并修改视图。

再通过视图向数据库添加、修改、删除数据。

2、使用步骤1中两种方法进行索引的创建、修改、删除操作。

三、实验用仪器设备及材料软件需求:操作系统:Windows XP或更新的版本数据库管理系统:SQL Server 2005或更新的版本硬件需求:Pentium Ⅲ1G以上的CPU处理器、256MB以上的内存、1.5G以上自由硬盘空间、打印机、打印纸、CD-ROM驱动器等。

四、实验步骤:1、在“对象资源管理器”中展开需要建立视图的“公司管理系统”数据库,用鼠标右键单击“视图”对象,选择快捷菜单“新建视图”选项,打开新建“视图”对话框,根据需要选择添加的表和视图。

现添加“职工表”、“项目表”和“客户表”。

在视图设计窗口中,创建“查询姓‘李’的职工负责的上海的项目名称”的视图。

据此设置视图的输出列、列名、表名等属性。

保存该视图并利用此视图进行查询操作。

2、选择当前数据库为“公司管理系统”数据库。

在“查询编辑器”中使用T-SQL语句创建“查询客户表中所有地址在‘北京’的客户编号和名称”的视图。

通过此视图向数据库中的表进行添加、修改、删除等更新记录操作。

3、在“对象资源管理器”中展开需要建立索引的“职工表”,选中“索引”选项并展开。

选中“索引”对象,单击鼠标右键,在快捷菜单中选择“新建索引”选项,打开“新建索引”对话框。

根据“职工表”的“出生日期”列创建一不唯一、也不是聚集的索引。

设置完毕后保存该索引并进行相应的查询输出以观察索引设置的输出效果。

4、在“查询编辑器”中使用T-SQL语句对“客户表”的“客户名称”列和“地址”列创建一不唯一的、也不是聚集的复合索引。

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

实验九视图和索引及数据库关系
一、实验目的
使学生掌握SQL Server中视图的创建、查看、修改和删除方法,掌握索引的创建和删除方法以及数据库关系图的实现方法,加深对视图和SQL Server数据库关系图作用的理解。

二、实验内容
(1)创建、查看、修改、和删除视图
(2)创建、删除索引文件
(3)创建数据库关系图
三、实验指导
本部分利用数据库JXGL的表S、SC、C中的数据进行实验
1.视图操作
(1)创建视图。

实验9.1 使用SQL Server Management Studio 直接创建视图。

(4)查看视图,单击“常用”工具栏中的“执行”按钮,就可以看到视图的数据显示。

实验9.2 使用T-SQL语句创建和查看视图
语法格式如下:
CREATE VIEW view AS select_statement
在数据库JXGL中3个表的基础上建立一个视图,取名为view_s_grade。

在数据库引擎查看文档中输入如下代码:
(2)修改视图
视图在创建好后,就可以利用它查询信息了。

如果用户发现视图的结构不能很好她满足要求,还可以对它进行修改。

实验9.3 使用SQL Server Management Studio 窗口直接修改视图。

2.索引文件的创建与删除
索引是一个单独的,物理的数据库结构,是为了加速对表中数据行的查询而创建的一种分散的存储结构
(1)创建索引文件
实验9.5 使用SQL Server Management Studio 窗口直接创建索引文件。

1.创建索引文件IX_sdept,关键字段为sdept,升序。

在数据库引擎查询文档中输入以下代码:
在S表中心字段age创建索引文件IX_age,降序。

代码如下:
3.创建数据库关系图
如果数据库中的表没有设置主键,那么,用户可以在关系图中先设置主键,然后再建立实体关系。

数据库关系图是数据训架构的图形描述。

实验9.7 数据库JXGL的关系图管理。

相关文档
最新文档