数据库原理索引、视图的定义实验报告
数据库视图实验报告
数据库视图实验报告一、实验目的本次实验的主要目的是深入理解数据库视图的概念、特点和用途,并通过实际操作掌握如何创建、修改和使用视图来优化数据库的查询和管理。
二、实验环境本次实验使用的数据库管理系统为 MySQL 80,操作系统为Windows 10。
三、实验原理1、视图的定义视图是一种虚拟表,它是从一个或多个基本表(或视图)导出的表。
视图本身并不包含数据,而是根据定义从基本表中动态获取数据。
2、视图的优点提供数据的逻辑独立性:当基本表的结构发生变化时,只要视图的定义不变,用户通过视图所得到的数据仍然是一致的。
简化数据查询和操作:可以将复杂的查询定义为视图,使用户能够更方便地获取所需的数据。
增强数据安全性:可以通过视图限制用户对敏感数据的访问,只展示用户有权查看的部分数据。
四、实验内容与步骤1、创建视图使用以下语句创建一个名为`student_info_view` 的视图,该视图包含学生表`students` 中的学号、姓名、年龄和专业信息:```sqlCREATE VIEW student_info_view ASSELECT student_id, student_name, age, majorFROM students;```2、查询视图通过以下语句查询创建的视图:```sqlSELECT FROM student_info_view;```3、修改视图修改视图的定义,增加一个成绩列`grade` ,语句如下:```sqlALTER VIEW student_info_view ASSELECT student_id, student_name, age, major, gradeFROM students;```4、删除视图使用以下语句删除视图:```sqlDROP VIEW student_info_view;```五、实验结果与分析1、创建视图成功后,通过查询视图能够获取到预期的学生信息,证明视图的定义和数据提取是正确的。
实验 视图、索引与数据库关系图
实验名称:实验五视图、索引与数据库关系图班级学号姓名日期所在院系指导老师成绩一、试验目的使学生掌握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.掌握SELECT语句的基本语法;
2.掌握子查询的表示;
3.掌握连接查询的表示;
4.掌握SELECT语句的统计函数的作用和使用方法;
5.掌握SELECT语句的GROUPBY和ORDERBY子句的作用和使用方法。
6.掌握使用创建、删除索引的基本方法
7.掌握视图的定义(创建和删除),查询,更新(注意更新的条件);
8.掌握索引分析与维护的常用方法。
二、实验使用环境:
WindowXP SP2 SQL Server 2005
三、实验内容与设计思想
根据自已所选的题目,完成对表的查询、统计、视图的创建。
1
2
3
4
5
6
7
8
9
10
11
12
13
14.1
14.2
四、出现问题及解决方案
1.函数名字不正确,大小写错误导致无效
2.标点符号在中文状态下打的,出现语法错误
五、实验小结
学会了建立视图,视图加密,更新的方法,创建索引,为一个表创建聚集索引和非聚集索引。
这次实验对sql基本的语法进一步的巩固了解,主要学到了SELECT语句的基本用法,子查询、连接查询的使用方法,还有select语句中group by、order by、compute等字句的用法,以及基本的SQL函数。
数据库实验报告3
数据库实验报告课程:数据库原理及应用正文:一、实验目的1.理解索引和视图的概念。
2.掌握索引的使用方法。
3.掌握视图的定义和使用方法。
4.理解存储过程的概念,掌握存储过程的使用方法。
5.学习触发器的使用,体会触发器执行的时机,加深对触发器功能和作用的理解。
6.理解SQL Server2000验证用户身份的过程,掌握设置身份验证模式的方法。
7.理解登陆账号的概念,掌握混合认证模式下登陆账号的建立与取消方法。
8.掌握混合认证模式下数据库用户的建立与取消。
9.掌握数据库用户权限的设置方法。
10.理解角色的概念,掌握管理角色技术。
11.学会配制ODBC数据源。
了解使用ODBC来进行数据库应用程序设计,通过ODBC接口访问数据库并对数据库进行操作。
学习在Visual Basic中使用ADO控件访问后台的SQL Server数据库。
二、实验内容1.建立索引。
对JWGL数据库的学生选课表SC建立索引,要求按照Cno升序、Grade降序建立一个名为SC_ind的索引。
USE JWGLIF EXISTS(SELECT name FROM sysindexes WHERE name = 'SC_ind')DROP INDEX SC.SC_ind;GOUSE JWGLCREATE INDEX SC_ind ON SC (Cno,Grade DESC);2.视图的定义和操作,(1)在JWGL数据库里,完成第三章例3.54~例3.61例题中视图的定义和视图上的查询、更新操作。
(2)在Market数据库中,完成第三章习题11中(1)中建立视图的操作,然后在视图上完成第三章习题11(2)的查询操作。
3.在数据库JWGL中,完成第四章例1,例3~7中例题的创建存储过程的操作,并使用EXEC语句调用这些存储过程执行,观察他们的执行结果。
4.在Market数据库中,完成第四章习题5中(1)~(4)创建存储过程的操作。
数据库原理实验报告(Mysql)
实验项目列表实验一:数据库的定义实验一、实验目的:1、理解MySQL Server 6.0 服务器的安装过程和方法;2、要求学生熟练掌握和使用SQL、T-SQL、SQL Server Enterpriser Manager Server 创建数据库、表、索引和修改表结构,并学会使用SQL Server Query Analyzer,接收T-SQL语句和进行结果分析。
二、实验环境:硬件:PC机软件:Windows操作系统、 MySQL Server 6.0 和Navicat for MySQL 9.0三、实验内容和原理:1、安装MySQL以及相应的GUI工具2、用SQL命令,建立学生-课程数据库基本表:学生Student(学号Sno,姓名Sname,年龄Sage,性别Ssex,所在系Sdept);课程Course(课程号Cno,课程名Cname,先行课Cpno,学分Ccredit);选课SC(学号Sno,课程号Cno,成绩Grade);要求:1) 用SQL命令建库、建表和建立表间联系。
2) 选择合适的数据类型。
3) 定义必要的索引、列级约束和表级约束.四、实验步骤:1、运行Navicat for MySQL,然后进行数据库连接,进入到GUI界面;2、利用图形界面建立基础表:student表的信息:Sage smallint 6Sdept varchar 20course表的信息:字段名类型长度约束条件Cno varchar 4 非空、主键Cname varchar 40Cpno varchar 4 与course表中Cno关联Ccredit smallint 6sc表的信息:字段名类型长度约束条件Sno varchar 9 非空、主键、与student表中Sno外键关联,级联删除Cno varchar 4 非空、主键、与course表中Cno外键关联Grade smallint 6(1)、连接数据库,在localhost中点击鼠标右键(如图1所示),点击“新建数据库”,在弹出的窗口中输入数据库名称(如图2所示),然后单击“确定”,就完成了数据库的建立。
数据库原理之视图与索引的实验报告
一、实验名称
视图与索引
二实验目的
1.学会使用企业管理器建立视图与索引
2.掌握使用SQL语句建立视图与索引
三实验内容
1.使用企业管理器建立视图索引
2.使用SQL语句建立视图索引
四实验准备
1.复习与本次实验内容相关知识
2.对本次实验中要求自己完成的部分做好准备
五实验步骤
1.用企业管理器建立一个基于学生表、课程表、成绩表的视图,要求该视图
显示学号、姓名、课程、成绩
用查询分析器建立一个基于学生表、班级表的学生视图
自己写一个SQL语句建立一个基于课程表的视图(V_COURSES),要求显示
课程编号、课程名、学分。
查看索引
2.为学生表按班级建立一个非簇集索引FK_U_STUDENTS,操作过程如下
实验心得
总的来说,这次实验因为在上面的几次试验中取得的一些经验,在做实验的时候,也不觉得有多么大的困难了。
相反,感觉有点轻车熟路。
这次实验的目的是学会使用企业管理器建立视图与索引,掌握使用SQL语句建立视图与索引。
在做实验的时候遇到的问题是发现自己建立的视图遇到与表的内容不符的情况,这是由于我对上次表的内容有些模糊,而导致后面做实验出现问题。
在查询了以前建的表后,我又认真做了修改,使得在建立视图的时候能够与表建立紧密的联系,从而不会孤立表的建立。
到了后期,视图的建立也简单多了。
其实,在我做完这个实验之后,明白这次实验都主要是围绕SQL语句,对于语句的熟悉和掌握,有助于我们对数据的应用。
在以后的工作中,也能够发挥到学到知识的作用。
《数据库实验四》实验报告
insert into v_cus values('C012','Google')
--在视图上更新
update v_order set订购日期='2011-11-29'
--在视图上删除
delete from v_cus
where客户号='C012'
《数据库》实验报告
题目:视图的定义和操作
学号
姓名
日期:
实验内容与完成情况:
一、实验目的:理解视图的概念,掌握视图的使用方法。
二、实验内容:定义视图,并在视图上完成查询、插入、更新和删除操作。
三.、程序源代码:
--1
--1)、基于单个表按投影操作定义视图
create view v_cus as
select客户号,客户名称
from客户
--使用
select * from v_cus
--2)、基于单个表按选择操作定义视图
create view v_order as
select *
from订购单
where客户号='C001'
--使用
select * from v_order
--3)、基于单个表按选择和投影操作定义视图
create view v_cuss as
select客户名称,联系人,电话
from客户
where客户号='C003'
--使用
select * from v_cuss
--4)、基于多个表根据连接操作定义视图
create view v_join as
t客户.*,订单号,订购日期
视图和索引的创建和使用实验报告
信息工程学院实验报告课程名称:《数据库原理》Array实验项目名称:视图与索引得创建与使用一、实验目得:(1)掌握创建视图得SQL语句得用法。
(2)掌握修改视图得方法、(3)熟悉视图更新与基本表更新得区别与联系;认识视图得作用。
(4)熟悉索引得作用,以及不同类型索引得区别。
(5)学会用T—SQL语句对表创建与删除索引二、实验设备与器件Win7+Sql server2008三、实验内容与步骤利用备份文件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”得姓名改为“刘晓晨”,能否实现?若无法实现说明原因。
⑥通过视图V_AVG_S_G,将学号“200215121”得平均成绩改为90,能否实现?若无法实现说明原因。
索引和视图学习报告【最新】
索引与视图学习报告一、学习目标:1、了解索引的概念和作用2、理解索引的创建的使用3、理解视图的基本概念和作用4、掌握视图的创建、查看及删除操作二、学习要求:1、了解索引和视图的含义,目的和作用,索引一经建立,就由系统使用和维护,无需用户干预。
2、通过看书和网上查阅资料,想同学多问多思考。
三、学习内容:1、索引:(1)索引定义:索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。
(2)数据库中索引主要分为两类:聚集索引和非聚集索引。
SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索引等等。
聚集索引和非聚集索引是数据库引擎中索引的基本类型,是理解其他类型索引的基础。
聚簇索引:聚集索引是值表中数据行的物理存储顺序和索引的存储顺序完全相同。
聚集索引根据索引顺序物理地重新排列了用户插入到表中的数据,因此,每个表只能创建一个聚集索引。
聚集索引经常创建在表中经常被搜索到的列或按顺序访问的列上。
在默认情况下,主键约束自动创建聚集索引。
非聚簇索引:非聚集索引不改变表中数据列的物理存储位置,数据与索引分开存储,通过索引指向的地址与表中的数据发生关系。
非聚集索引没有改变表中物理行的位置,索引可以在以下情况下使用非聚集索引:1、如果某个字段的数据唯一性比较高2、如果查询所得到的数据量比较少其他类型索引:除了以上索引,还有以下类型索引:A、唯一索引:如果希望索引键都不同,可以创建唯一索引。
聚集索引和非聚集索引都可以是唯一索引。
B、包含新列索引:索引列的最大数量是16个,索引列的字节总数的最高值是900。
如果当多个列的字节总数大于900,切又想在这些劣种都包含索引是,可以使用包含性列索引。
C、视图索引:提供视图查询效率,可以视图的索引物理化,也就是说将结果集永久存储在索引中,可以创建视图索引。
D、XML索引:是与xml数据关联的索引形式,是XML二进制blob的已拆分持久表示形式。
006-实验六T-索引与视图(实验报告内容)
实验六索引与视图(实验报告)一、目的1.掌握索引和视图的基本概念和功能。
2.掌握利用SQL Server Management Studio和Transact-SQL语句创建、维护索引的方法。
3.掌握SQL Server Management Studio和Transact-SQL语句创建、修改视图的方法。
4.掌握通过视图查看和修改基本表中的数据。
二、实验内容(1)完成下列操作1.利用SQL Server Management Studio为student表的classno字段创建非聚集、非唯一索引UC_classno。
2.利用Transact-SQL语句在teaching数据库中teacher表的tname列上创建非聚集唯一索引UQ_tname。
若该索引已存在,则删除后重建。
3.利用SQL Server Management Studio查看索引被查询优化器使用的情况。
4.利用Transact-SQL语句修改UQ_tname的索引属性,当执行多行插入操作时出现重复键值,则忽略该记录,且设置填充因子为80%。
5.利用SQL Server Management Studio在teaching数据库中创建视图v_course_avg,查询没门课程的课程号、课程名及选修该课程的学生的期末平均成绩平均分,并且按平均分降序排列。
6.利用Transact-SQL语句,在teaching数据库中创建视图v_age,查询年龄在18岁及以上的学生的学号、姓名、性别、出生日期和班级编号。
若该视图已存在,则删除后重建。
7.利用Transact-SQL语句,在teaching数据库中创建视图v_teacher_course,包含教师编号、教师姓名、职称、课程号、课程名和任课班级。
8.利用Transact-SQL语句修改v_age的视图定义,添加WITH CHECK OPTION选项。
9.通过视图v_teacher_course将教师编号为‘t05017’的教师的职称更改为‘副教授’。
数据库实验五 索引和视图
华中科技大学《数据库技术与应用》实验报告专业班级:学生姓名:学号:实验地点:指导教师:实验日期时间:一、实验项目名称:索引和视图二、实验学时:三、实验目的:1.学会使用SQL Server管理平台和Transact-SQL语句CREATE INDEX创建索引。
2.学会使用SQL Server管理平台查看索引。
3.学会使用SQL Server管理平台和Transact-SQL语句DROP INDEX删除索引。
4.掌握使用SQL Server管理平台和Transact-SQL语句CREATE-VIEW创建视图的用法。
5.了解对索引和视图更名的系统存储过程sp_rename的用法。
6.掌握使用Transact-SQL语句ALTER VIEW修改视图的方法。
7.了解删除视图的Transact-SQL语句DROP VIEW的用法。
四、实验工具或环境五、实验内容、步骤、代码和结果:0. 创建studentsdb数据库及其相应表,并录入数据。
在SQL Server管理平台上,点击“新建查询”打开查询编辑器窗口,复制粘贴附件“创建数据库代码”中的代码到查询编辑器窗口,运行即可生成相关数据库和表,并有相应的数据。
1.分别使用SQL Server管理平台和Transact-SQL语句为studentsdb数据库的student_info表和curriculum表创建主键索引。
alter table student_info alter column学号char(4)not null;alter table student_infoadd primary key(学号)alter tablecurriculum alter column课程编号char(4)not null;alter table curriculumadd primary key(课程编号)2.使用SQL Server管理平台按curriculum表的课程编号列创建唯一性索引。
数据库实验四 视图与索引
实验4 视图与索引一、实验目的1.本实验的目的是使学生掌握视图与索引的使用方法,加深对视图与索引作用的的理解。
2.通过自行设计视图与索引,加强学生的数据库设计能力。
二、实验内容1.索引的定义和维护1)建立唯一索引,测试插入、修改记录时所受的影响。
2)建立聚簇索引,比较建立前后的记录顺序变化。
3)建立多重索引,观察执行select语句查询的结果记录顺序。
4)删除相关索引。
2.视图的定义、查询和更新1)为学生选课系统从不同用户角度出发设计相应的视图。
2)利用视图进行相关查询。
3)利用视图进行更新,注意哪些视图是不可更新的。
三、实验原理1.建立索引语句CREATE [UNIQUE] [CLUSTER] INDEX <索引名> ON <表名>(<列名>[<次序>][,<列名>[<次序>] ]…);⏹用<表名>指定要建索引的基本表名字⏹索引可以建立在该表的一列或多列上,各列名之间用逗号分隔⏹用<次序>指定索引值的排列次序,升序:ASC,降序:DESC。
缺省值:ASC⏹UNIQUE表明此索引的每一个索引值只对应唯一的数据记录⏹CLUSTER表示要建立的索引是聚簇索引(CLUSTERED)HAVING短语:筛选出只有满足指定条件的组⏹ORDER BY子句:对查询结果表按指定列值的升序或降序排序2.建立视图语句CREATE VIEW <视图名> [(<列名> [,<列名>]…)]AS <子查询> [WITH CHECK OPTION]四、实验步骤按实验目的和内容自行设计。
五、实验报告要求1)写出本实验中用到的SQL语句的使用说明;2)对每一实验结果进行分析;3)记录在查询实验中遇到的典型问题及你所采取的解决方法;。
数据库实验报告 索引和视图
西北师范大学计算机科学与工程学院学生实验报告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实验结果:实验总结:通过本次实验掌握了索引、统计信息和视图等数据库对象的基本概念和基本操作。
视图和索引的创建和使用实验报告
课程名称:《数据库原理》绩成实验项目名称:视图和索引的创建和使指导老签一、实验目的:(1)掌握创建视图的SQL语句的用法。
(2)掌握修改视图的方法。
(3)熟悉视图更新与基本表更新的区别与联系;认识视图的作用。
(4)熟悉索引的作用,以及不同类型索引的区别。
(5)学会用T-SQL语句对表创建和删除索引二、实验设备与器件+Sql server 2008Win7三、实验内容与步骤利用备份文件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,将学号为“5”的学生姓名更改为“张小立”,并查看结果;②通过视图V_IS,新增加一个学生记录 ('6','黄笑',19, '男','IS'),并查看结果。
③通过视图V_IS,新增加一个学生记录 ('7','李霞',19, '女','MA'),并查看结果。
④通过视图V_IS,删除学号为“6”的学生信息,并查看结果。
⑤通过视图V_S_C_G,将学号“2”的姓名改为“刘晓晨”,能否实现?若无法实现说明原因。
⑥通过视图V_AVG_S_G,将学号“1”的平均成绩改为90,能否实现?若无法实现说明原因。
实验5索引和视图
实验5索引和视图实验5 索引和视图⼀、实验⽬的1.掌握索引的使⽤⽅法2.掌握数据完整性的实现⽅法3.熟悉视图的概念和作⽤4.掌握视图的创建⽅法5.掌握如何查询和修改视图⼆、实验准备1.了解索引的作⽤与分类2.掌握索引的创建⽅法3.了解视图的概念4.了解创建视图的⽅法5.了解对视图的操作三、实验内容及要求1.创建索引1)在Employees表的Name列和Address列上建⽴复合索引。
2)对Departments表上的DepartmentName列建⽴唯⼀性索引。
3)使⽤CREATE INDEX语句能创建主键吗?4)向Employees表中的出⽣⽇期列添加⼀个唯⼀性索引,姓名列和性别列上添加⼀个复合索引。
5)假设Departments表中没有主键,使⽤ALTER TABLE语句将DepartmentID列设为主键。
6)添加主键和添加普通索引有什么区别?7)创建与Departments表相同结构的表Departments1,将DepartmentName设为主键,DepartmentsID上建⽴⼀个索引。
2.删除索引1)使⽤DROP INDEX语句删除表Employees上的索引depart_ind。
2)使⽤ALTER TABLE语句删除Departments上的主键和索引Dep_ind。
3.创建视图1)创建YGGL数据库上的视图DS_VIEW,视图包含Departments表的全部列。
2)创建YGGL数据库上的视图Employees_view,视图包含员⼯号码、姓名和实际收⼊。
4.查询视图1)从视图DS_VIEW中查询出部门号为3的部门名称。
2)从视图Employees_view查询出姓名为“王林”的员⼯的实际收⼊。
5.更新视图1)向视图DS_VIEW中插⼊⼀⾏数据:6,⼴告部,⼴告业务。
2)执⾏完该命令使⽤SELECT语句分别查看视图DS_VIEW和基本表Departments中发⽣的变化。
3)尝试向视图Employees_view中插⼊⼀⾏数据,看看会发⽣什么情况。
数据库实验报告:视图 和索引
一、实验步骤(一)附加上次实验所创建的数据库“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”视图的定义信息和依赖的对象。
数据库原理索引视图实验报告
数据库组成原理实验报告题目:索引、视图的定义院系:计算机科学与工程学院班级:姓名:学号:一、实验题目索引、视图的定义二、实验日期2014年10月25日三、实验目的及要求掌握嵌套查询语句的运用,掌握使用T -SQL语句创建视图的方法,包括视图的建立、删除、修改;了解如何应用视图有选择地查看所需数据,并熟悉通过视图更改数据表中数据的方法。
掌握创建索引的方法。
四、实验环境Sqlserver2008,windows xp。
五、实验内容在数据库TestDB中,基于表"项目数据表"和"员工数据表"创建视图,要求:(1)视图名为"员工项目"。
(2)包含字段"编号"、"姓名"、"名称"和"开始日期"。
(3)字段别名分别是"员工编号"、”员工姓名"、"项目名称"、"项目开始日期"。
六、实验步骤在数据库TestDB中,基于表"项目数据表"和"员工数据表"创建视图,要求为:(1)视图名为"员工项目"。
(2)包含字段"编号"、"姓名"、"名称"和"开始日期"。
(3)字段别名分别是"员工编号"、”员工姓名"、"项目名称"、"项目开始日期"。
(1)打开查询分析器。
在查询窗口书写CREATE VIEW语句创建视图,并指定字段别名:USE TestDBGOCREATE VIEW员工项目(员工编号,员工姓名,项目名称,项目开始日期) ASSELECT a·编号,a·姓名,b·名称,b·开始日期,FROM员工数据表AS a INNER JOIN项目数据表AS bON a·编号=b·负责人WHERE a·编号=b·负责人GO(2)使用INSERT语句通过视图向员工数据表中添加一条记录,要求"姓名"字段值为"马中兴"。
实验报告四 索引和视图
实验四索引和视图一、实验学时2学时二、实验目的(1)理解索引的概念与类型。
(2)掌握使用企业管理器创建与维护索引的方法。
(3)掌握T-SQL语句创建与维护索引的方法。
(4)理解视图的概念。
(5)掌握视图创建、更改的方法。
(6)掌握用视图管理数据的方法。
三、实验要求(1)硬件设备:奔腾II或奔腾II以上计算机,局域网。
SERVER、WINDOWS7、XP、WINDOWS9X/NT、WINDOWS(2)软件环境:WINDOWSSQL SERVER 2000/2005/2008中文版企业版或标准版。
(3)实验课前预习,课后及时完成实验内容。
(4)实验过程及记录按题目格式要求填写代码清单。
四、实验内容(一)索引索引分为两种:聚簇索引和非聚簇索引。
每张表只能有一个聚簇索引。
创建索引时的缺省设置是非聚簇索引。
1.使用企业管理器创建、管理索引(1)创建索引1)为Student表创建一个以Sno为索引关键字的惟一聚簇索引。
(若原已有,请删除,索引名为Sno_index)(提示:选择表后点击鼠标右键,选“设计”,窗口空白区域点击鼠标右键,选“索引/键”)基本步骤:2)为Student表创建以Sname,Sex为索引关键字的非聚簇索引(对Sname 以升序来排列,Sex以降序排列,并设置填充因子为70%)。
索引名为:SS_index。
(提示:填充因子为索引创建时索引里的数据页被填充的数量)基本步骤:(2)重命名索引将索引文件Sno_index重新命名为Sno_index1。
基本步骤:(3)删除索引将索引文件Sno_index1删除。
基本步骤:2.使用T-SQL语句创建、管理索引(1)创建索引1)为SC表创建一个非聚集索引Grade_index,索引关键字为Grade,升序,填充因子为80%。
(提示:with fillfactor=)T-SQL语句:create nonclustered index Grade_indexon SC(Grade)with fillfactor=80;2)为SC表创建一个唯一性聚集索引SC_index,索引关键字为Sno,Cno。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据库原理实验报告
题目:索引、视图的定义院系:计算机科学与工程学院
【实验题目】
索引、视图的定义
【实验目的】
掌握使用T -SQL语句创建视图的方法,包括视图的建立、删除、修改;了解如何应用视图有选择地查看所需数据,并熟悉通过视图更改数据表中数据的方法。
掌握创建索引的方法。
【实验内容】
1、据库TestDB中,基于表"项目数据表"和"员工数据表"创建视图,要求为:
(1)视图名为"员工项目"。
(2)包含字段"编号"、"姓名"、"名称"和"开始日期"。
(3)字段别名分别是"员工编号"、”员工姓名"、"项目名称"、"项目开
始日期"。
2、使用企业管理器和Transact-SQL语句在实验二的数据表"员工数据表"中基于"姓名"创建索引,要求索引名为"IDX_Name",索引类型为非聚集索引。
【实现方法】
1、视图
(1)打开查询分析器。
在查询窗口书写CREATE VIEW语句创建视图,并指定字段别名:
USE TestDB
GO
CREATE VIEW员工项目(员工编号,员工姓名,项目名称,项目开始日期) AS
SELECT a·编号,a·姓名,b·名称,b·开始日期,
FROM员工数据表AS a INNER JOIN项目数据表AS b
ON a·编号=b·负责人
WHERE a·编号=b·负责人
GO
(2)使用INSERT语句通过视图向员工数据表中添加一条记录,要求"姓名"字段值
为"马中兴"。
USETestDB
GO
INSERTINTO 员工项目(员工姓名)
VALUES('马中兴')
GO
(3)使用UPPDATE语句通过视图将第二步中插入记录的员工姓名改为"马中新"。
USETestDB
GO
UPDATE员工项目
SET 项目负责人= '马中新’,
WHERE 项目负责人=’马中兴’
GO
(4)执行系统存储过程sp_rename将视图更名为"employee_project_VIEW "。
USETestDB
GO
EXEC sp_rename '员工项目', 'emp1oyee_project_VIEW';
2、索引
方法一,使用企业管理器
(1)打开企业管理器,在树状目录中展开数据表"员工数据表"所在的数据
库节点TestDB,并选择其下一级节点"表"。
(2)选择表"员工数据表",并单击鼠标右键。
在弹出菜单中选择命令"所有
任务〉管理索引",打开"管理索引"对话框。
(3)在"管理索引"对话框中的"数据库"下拉菜单中选择数据库表。
(4)选择"新建"按钮,弹出"新建索引"对话框。
(5)在"新建索引"对话框的"索引名"文本框中输入索引名称"IDX_Name",然后选择字段"姓名"并设置索引属性。
(6)设置索引选项以后,单击"确定"按钮,返回到"管理索引"对话框。
(7)单击"关闭"按钮,退出"管理索引"对话框,完成索引的创建。
方法二:使用T-SQL语旬
USE TestDB
GO
CREATE INDEX IDX_Name ON 员工数据表(姓名)
GO
【实验结果】
【实验心得】
通过本次实验,我知道了如何在数据库中创建自己想要的索引和视图,加深了我对数据库的了解,让我在使用SQLsever的时候更加得心应手,在对数据库数据进行查询时也更加方便。