课程名称:数据库应用技术项目项目名称:索引、视图的基本操作姓名:专业:_ 班级:_ _学号:_ 同组成员
1注:1、实验预习部分包括实验环境准备和实验所需知识点准备。
2、若是单人单组实验,同组成员填无。
2注:实验过程记录要包含实验目的、实验原理、实验步骤,页码不够可自行添加。
实验报告成绩(百分制)__________ 实验指导教师签字:__________
3注:1、实验小结应包含实验所需知识点和实验方法的总结,实验心得体会等。
2、分组实验需包含同组讨论内容。
实验报告 课程名称:学院名称:数据原理与应用计算机学院 专业班级:计1201 学生姓名:张文江 学号:201107010122
实验3 索引及视图操作 一、实验目的 1. 加深对索引和视图概念的理解。 2. 熟练掌握索引的创建和删除。 3. 熟练掌握视图的创建、修改和删除。 4. 熟练运用视图进行各种检索操作。 二、实验环境 硬件环境:PC机 软件环境:操作系统为Microsoft Windows 2000或以上版本。 数据库管理系统为Microsoft SQL Server 2000标准版或企业版。 三、实验内容 1. 熟悉运用SQL Server企业管理器和查询分析器进行索引的创建和删除。 2. 熟悉运用SQL Server企业管理器和查询分析器进行视图的创建、删除和修改。 四、实验步骤 1. 利用实验1已经建立并保存过的学生表、课程表,学生表按学号建立惟一索引,课程表按课程名建立惟一索引; create index S_sno on S(sno) create index C_cno on C(cno) 2. 利用实验1已经建立并保存过的学生表和选课表建立一个“网络工程”专业学生成绩视图JSGV(sno,cno,grade); create view JSGV(sno,cno,grade) as select S.sno,cno,grade from SC,S where dept='网络工程'and S.sno=SC.sno 利用视图JSGV查询“网络工程”专业的学生选课多于2门的学生学号; select distinct sno
from JSGV group by sno having (count(*)>2) 验证能否利用视图JSGV中插入一条“网络工程”专业学生选修“高等数学”课程的记录,并查询结果信息; insert into JSGV values('20080205','c03','85') 删除视图JSGV。 drop view JSGV 3. 利用实验1已经建立并保存过的学生表、课程表、选课表建立视图TOTAL(sno,sname,cname,grade); create view TOTAL(cno,sname,cname,grade) as select https://www.doczj.com/doc/c54851587.html,o,sname,cname,grade from SC,S,C where S.sno=SC.sno and https://www.doczj.com/doc/c54851587.html,o=https://www.doczj.com/doc/c54851587.html,o
第一部分 创建如下表:并向每张表中添加5条数据 学生表t_student(f_no,f_name,f_sex,f_department) 课程表(f_id,f_name) 成绩表(f_no,f_subjectid,f_score) 作业: 1、对成绩表的课程编号创建非簇索引 2、对学生表的姓名和年龄创建非簇索引 3、对学生表的学号创建唯一索引 4、创建视图统计成绩表中任何一门课程及没有及格的信息 5、创建视图查询男生的平均成绩 6、对课程表的课程编号和分数创建非簇索引 7、将上题中的非簇索引删除 8、创建视图查询C#课程不及格的女生信息 9、创建视图统计男女生的平均分信息 10、简述索引的作用和种类 11、简述视图的作用 第二部分 使用northwind数据库完成: 1)在northwind库中(products和suppliers表中)查找每个商品对应的供应商名 称建立视图my_view,并通过该视图查询数据。 2)在视图my_view中,将companyname为以tokyo开头的改为ToKyo.使用修改表数 据的UPDATE语句。 3)使用DROP VIEW语句将视图my_view删除。 4)使用Northwind数据库,在Suppliers表的Country列和city列上创建一个名为 Country_index的非聚集索引。 5)删除Country_index索引。 6)在Suppliers表的Country列和city列上创建一个名为Country_index的非聚集 索引。请确保索引页留有50%的空白空间,并且删除具有相同名称的现有索引 7)使用CREATE VIEW语句,基于employees表创建一个名为EmpHierarchy的视图。 视图应包含有上级领导的雇员的雇员ID、名、姓及其上级的姓 8)在视图EmpHierarchy中,将雇员ID为4的雇员的姓改为”Jones”。使用修改表数 据的UPDATE语句 9)使用DROP VIEW语句将视图EmpHierarchy删除
数据库原理实验报告 题目:索引、视图的定义院系:计算机科学与工程学院
【实验题目】 索引、视图的定义 【实验目的】 掌握使用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 项目负责人=’马中兴’
数据库原理实验报告实验 四视图与索引 The Standardization Office was revised on the afternoon of December 13, 2020
一、实验内容、步骤以及结果 1.在Student数据库中,利用图形用户界面,创建一个选修了“数据库原理”课程并且是1996年出生的学生的视图,视图中包括学号,性别,成绩三个信息。(5分) 2.用两种不同的SQL语句创建第五版教材第三章第9题中要求的视图(视图名:V_SPJ)(10分,每种方法5分)。 --第一种方法 CREATE VIEW V_SPJ AS SELECT sno,pno,qty FROM SPJ WHERE jno=( SELECT jno FROM J WHERE jname ='三建' ); GO --删除建好的视图 DROP VIEW V_SPJ; GO --第二种方法 CREATE VIEW V_SPJ AS
SELECT sno,pno,qty FROM SPJ,J WHERE=AND='三建'; 3.用SQL语句完成第五版教材第三章第11题中的视图查询(10分,每小题5分)。 11.请为三建工程项目建立一个供应情况的视图,包括供应商代码(SNO)、 零件代码(PNO)、供应数量(QTY)。 针对该视图VSP完成下列查询: (1)找出三建工程项目使用的各种零件代码及其数量。 (2)找出供应商S1的供应情况。
4.用SQL语句完成视图的数据更新。(15分,每题5分) (1)给视图V_SPJ中增加一条数据。 提示: -SPJ表中JNO允许为空时,数据可以插入基本表,此时JNO为NULL,由于JNO为NULL,所以视图中没有该条数据。 -SPJ表中JNO不能为空时,可以使用instead of触发器实现。 (2)修改视图V_SPJ中的任意一条数据的供应数量。
石家庄经济学院 实验报告 学院: 信息工程学院 专业: 网络工程 信息工程学院计算机实验中心制
1.索引的建立和删除操作 2.视图的创建、修改、更新和查询操作 二实验目的 1.掌握数据库索引建立与删除操作,掌握数据库索引的分类,并了解建立数据库索引的意义、作用。 2.掌握视图的创建和查询操作,理解视图的使用,理解实图在数据库安全性中的作用。 三实验内容 1.索引的建立和删除操作 (1)在S表中,建立按照sno升序的惟一性索引snoIDX。 (2)在SC表中,建立按照学号升序和课程号降序的唯一性索引scIDX。 (3)在S表中,按照生日建立一个非聚簇索引birthdayIDX。 (4)在C表中,建立一个按照课程名升序的聚簇索引cnameIDX。 (5)删除索引cnameIDX。 2.视图的创建、修改、更新和查询操作 (1)建立一个关于所有女生信息的视图S_GIRL。 (2)将各系学生人数,平均年龄定义为视图V_NUM_A VG (3)建立一个视图反映学生所选课程的总学分情况TOTAL_CREDIT。 (4)建立一个所有学生课程成绩的视图S_GRADE,包括基本学生信息,课程信息和成绩。 (5)在视图S_GRADE基础之上,建立一个两门课以上成绩不及格的学生情况视图FAIL_GRADE。 (6)建立一个至少选修了4门课及4门课以上的学生信息的视图SC_FOUR。 (7)修改视图S_GIRL,要求只显示1997年以前出生的女生信息。 (8)在视图FAIL_GRADE查询不及格超过2门课的学生信息。 (9)删除视图S_GRADE。 (10)通过视图S_GIRL,将“王丹”的名字修改为“汪丹”,并查询结果。 (11)通过视图S_GIRL,新增一个学生信息(“刘兰兰”,“女”,“计算机学院”,1996-8-8),并查询 结果。 (12)通过视图S_GIRL,删除1995年出生的女生信息,并查询结果。 (13)通过视图S_GRADE,将“汪丹”的名字修改为“王丹”,是否可以实现,请说明原因。 (14)通过视图COMPUTE_A VG_GRADE,将“4121090301”学生的平均分改为90分,是否可以实 现,请说明原因。 四实验要求 1.要求掌握索引的类型,以及创建索引时的注意事项,例如每个表只能创建一个聚集索引,可以创建非聚集索引最多为249个,等等。 2.理解创建视图的目的和意义。掌握创建视图时需要考虑的原则:只能在当前数据库中创建视图、
. . . 数据库基础与实践实验报告实验四视图和索引 班级:惠普测试142 学号:1408090213 :闫伟明 日期:2016-11-13
1 实验目的: 1)掌握SQL进行视图创建的方法; 2)掌握SQL进行视图更新的方法,理解视图更新受限的原因; 3)掌握SQL进行索引创建及删除的方法。 2 实验平台: 操作系统:Windows xp。 实验环境:SQL Server 2000以上版本。 3 实验容与步骤 利用实验一创建的sch_id数据库完成下列实验容。 1.定义视图V_TCS(定义时不加with check option),存放全部计算机系老师的信息。 视图定义代码: CREATE VIEW V_TCS AS SELECT tno,tn,sex,age,prof,sal,comm,T.dno FROM T,D WHERE T.dno=D.dno AND D.dn='计算机' 视图查询语句与查询结果截图: SELECT*FROM V_TCS 2.定义视图V_sal,存放全体教师的教师号,教师,教师酬金(工资+岗位津贴),职称信息。视图定义代码: CREATE VIEW V_sal AS
SELECT tno教师号,tn教师,sal+comm教师酬金,prof支撑信息 FROM T 视图查询语句与查询结果截图: SELECT*FROM V_sal 3.向V_TCS中插入一条计算机专业教师的新记录,并查询V_TCS视图的全部记录。视图更新代码: INSERT INTO V_TCS SELECT'T10','良瑗','女',20,'讲师',6000,8000,D.dno FROM D WHERE D.dn='计算机'
实验名称:实验五视图、索引与数据库关系图 班级学号姓名日期 所在院系指导老师成绩 一、试验目的 使学生掌握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中,选择服务器、数据库、并使数据库展开,再单击“视图”前面的+,就可以看到已存在的视图了。 2.右击要修改结构的视图,在弹出的视图功能快捷菜单中选择“修改”命令,就可以直接修改了。 (3)删除视图 使用SQL Server Management Studio直接删除,步骤如下: 1.在SQL Server Management Studio中,选择服务器、数据库、并使数据库展开,再单击“视图”前面的+,就可以看到已存在的视图了。 2.右击要删除的视图,在弹出的视图功能快捷菜单中选择“删除”命令,就可以直接删除掉制定的视图。 2)索引文件的创建与删除 索引是一个单独的、物理的数据库结构,是为了加速对表中数据行的查询而创建的一种分散的存储结构。 (1)创建索引文件。 使用SQL Server Management Studio直接创建索引文件,步骤如下: 1.单击数据库前面的+号,然后再单击“学生选课”数据库前面的+号,再单击表前面的+号,就额可以看到已存在的表了, 2.选定要添加索引的表,如数据表student。右击,在弹出的快捷菜单中选择“修改”命令。
数据库基础与实践实验报告实验四视图和索引 班级:惠普测试142 学号:1408090213 姓名:闫伟明 日期:2016-11-13
1 实验目的: 1)掌握SQL进行视图创建的方法; 2)掌握SQL进行视图更新的方法,理解视图更新受限的原因; 3)掌握SQL进行索引创建及删除的方法。 2 实验平台: 操作系统:Windows xp。 实验环境:SQL Server 2000以上版本。 3 实验内容与步骤 利用实验一创建的sch_id数据库完成下列实验内容。 1.定义视图V_TCS(定义时不加with check option),存放全部计算机系老师的信息。 视图定义代码: CREATE VIEW V_TCS AS SELECT tno,tn,sex,age,prof,sal,comm,T.dno FROM T,D WHERE T.dno=D.dno AND D.dn='计算机' 视图查询语句与查询结果截图: SELECT*FROM V_TCS 2.定义视图V_sal,存放全体教师的教师号,教师姓名,教师酬金(工资+岗位津贴),职称信息。视图定义代码: CREATE VIEW V_sal AS
SELECT tno教师号,tn教师姓名,sal+comm教师酬金,prof支撑信息 FROM T 视图查询语句与查询结果截图: SELECT*FROM V_sal 3.向V_TCS中插入一条计算机专业教师的新记录,并查询V_TCS视图的全部记录。视图更新代码: INSERT INTO V_TCS SELECT'T10','良瑗','女',20,'讲师',6000,8000,D.dno FROM D WHERE D.dn='计算机'
经济学院 实验报告 学院: 信息工程学院 专业: 网络工程 信息工程学院计算机实验中心制
一实验题目 1.索引的建立和删除操作 2.视图的创建、修改、更新和查询操作 二实验目的 1.掌握数据库索引建立与删除操作,掌握数据库索引的分类,并了解建立数据库索引的意义、作用。 2.掌握视图的创建和查询操作,理解视图的使用,理解实图在数据库安全性中的作用。 三实验容 1.索引的建立和删除操作 (1)在S表中,建立按照sno升序的惟一性索引snoIDX。 (2)在SC表中,建立按照学号升序和课程号降序的唯一性索引scIDX。 (3)在S表中,按照生日建立一个非聚簇索引birthdayIDX。 (4)在C表中,建立一个按照课程名升序的聚簇索引cnameIDX。 (5)删除索引cnameIDX。 2.视图的创建、修改、更新和查询操作 (1)建立一个关于所有女生信息的视图S_GIRL。 (2)将各系学生人数,平均年龄定义为视图V_NUM_AVG (3)建立一个视图反映学生所选课程的总学分情况TOTAL_CREDIT。 (4)建立一个所有学生课程成绩的视图S_GRADE,包括基本学生信息,课程信息和成绩。 (5)在视图S_GRADE基础之上,建立一个两门课以上成绩不及格的学生情况视图FAIL_GRADE。 (6)建立一个至少选修了4门课及4门课以上的学生信息的视图SC_FOUR。 (7)修改视图S_GIRL,要求只显示1997年以前出生的女生信息。 (8)在视图FAIL_GRADE查询不及格超过2门课的学生信息。 (9)删除视图S_GRADE。 (10)通过视图S_GIRL,将“王丹”的名字修改为“汪丹”,并查询结果。 (11)通过视图S_GIRL,新增一个学生信息(“兰兰”,“女”,“计算机学院”,1996-8-8),并查询结 果。 (12)通过视图S_GIRL,删除1995年出生的女生信息,并查询结果。 (13)通过视图S_GRADE,将“汪丹”的名字修改为“王丹”,是否可以实现,请说明原因。 (14)通过视图COMPUTE_AVG_GRADE,将“4121090301”学生的平均分改为90分,是否可以实 现,请说明原因。
数据库技术与应用实验报告 实验名称:索引和视图 系(科):信息与科学技术系 班级:180932 学号:18093238 姓名:夏良飞 完成时间:2012年5月5日 南京师范大学中北学院
实验5 索引和视图 一、实验目的 1.学会使用SQL Server管理平台和Transact-SQL语句CREATE INDEX创建索引。 2.学会使用SQL Server管理平台查看索引。 3.学会使用SQL Server管理平台和Transact-SQL语句DROP INDEX删除索引。 4.掌握使用SQL Server管理平台、向导等创建、管理和删除全文索引,并使用全文索引查询信息的方法。 5. 掌握使用SQL Server管理平台和Transact-SQL语句CREATE VIEW创建视图的用法。 6.掌握系统存储过程sp_rename的用法。 7.掌握使用Transact-SQL语句ALTER VIEW修改视图的方法。 二、实验准备 1.了解聚集索引和非聚集索引的概念。 2.了解使用Transact-SQL语句CREATE INDEX创建索引的语法。 3.了解使用SQL Server管理平台创建索引的步骤。 4.了解Transact-SQL语句DROP INDEX删除索引的用法。 5.了解创建视图的Transact-SQL语句CREATE VIEW的语法格式及用法。 6.了解修改视图的Transact-SQL语句ALTER VIEW的语法格式。 7.了解视图更名的系统存储过程sp_rename的用法。 8.了解删除视图的Transact-SQL语句DROP VIEW的用法。、 三、实验内容 1.分别使用SQL Server管理平台和Transact-SQL语句为studentsdb数据库的《学生表》和《课程表》创建主键索引。
实验5 索引和视图 学号:18103317 专业:电子信息工程 一、实验内容 1.分别使用SQL Server管理平台和Transact-SQL语句为studentsdb数据库的《学生表》和《课程表》创建主键索引。 2.使用SQL Server管理平台按《课程表》的课程编号列创建唯一性索引。 3.分别使用SQL Server管理平台和Transact-SQL语句为studentsdb数据库的《成绩表》的“分数”字段创建一个非聚集索引,命名为《成绩_index》。 CREATE INDEX 成绩_index ON 成绩表(分数) 4.为studentsdb数据库的《成绩表》的“学号”和“课程编号”字段创建一个复合唯索引,命名为《成绩表_id_c_ind》。 CREATE UNIQUE INDEX 成绩表_id_c_ind ON 成绩表(学号,课程编号) 5.分别使用SQL Server管理平台和系统存储过程sp_helpindex查看《成绩表》和《学生表》上的索引信息。 6.使用SQL Server管理平台的“向导'工具对《成绩表》创建一个聚集索引和唯一索引。 7.使用系统存储过程sp_rename将索引《成绩表_index》更名为《成绩表_ind》。 Sp_rename ‘grade.grade_index’,’grade_ind’,’INDEX’ 8.分别使用SQL Server管理平台和Transact-SQL语句DROP INDEX删除索《成绩表_ind》再次使用系统存储过程sp_helpindex查看《成绩表》上的索引信息。 DROP INDEX grade.grade_ind 9.在studentsdb数据库中,以《学生表》为基础,使用SQL Server管理平台建立名为v_stu_i的视图,使视图显示学生姓名、性别、家庭住址。
实验五视图和索引的创建及使用 实验目的: 1、理解视图和索引的概念 2、学会使用企业管理器和T-SQL语句创建视图和索引 3、理解视图和索引的优缺点,掌握视图和索引的管理和维护。 实验内容: 一视图 1、使用企业管理器建立视图,进入“添加表”对话框,选择表student,在“视图设计器”界面的表选择区中选择所有列选型,在SQL语句区,编辑并执行,查看视图显示结果。 2、保存视图名为view_student. 3、建立学生学号、姓名、性别、课程号、成绩的视图v_sc,查看v_sc中的数据。 4、建立学生学号、姓名、出生年份的视图v_age 查看V_age中的数据。 5、建立…JSJ? 系的学生学号、姓名、性别、年龄的视图v_JSJ 6、建立每门课程的平均分的视图v_avggrade 二索引 1、使用企业管理器为学生表student创建一个以stud_id 为索引关键字的惟一聚簇索引。 2、将上一步所建立的索引名称修改为new_index。 3、将前述所建立的new_index 索引删除。 4、使用T-SQL 语句为课程表Course 创建一个名为Course_Index 的惟一非聚簇索引,索引关键字为教师编号Course_id,降序,填充因子为80%。 5、使用T-SQL 语句将课程表中的Course_Index 删除。 6、为student表创建一个基于“年龄,学号”组合列的非聚集、复合索引cj_xh_index。 7、为lesson_info 创建一个基于“课程号course_id,课程类型course_type” 组合列的惟一、聚集、复合索引kc_lx_index。 实验结果中记录结果,不能省略。 附:建立实验相关数据库与表 CREATE DATABASE TESTDB ON PRIMARY (NAME='TESTDB', FILENAME='d:\TESTDB.mdf', SIZE=3072KB, MAXSIZE='UNLIMITED', FILEGROWTH=1024KB) LOG ON (NAME='TESTDB_LOG', FILENAME='d:\TESTDB_LOG.ldf', SIZE=1024KB, MAXSIZE=2048GB, FILEGROWTH=10%) COLLATE Chinese_PRC_CI_AS
数据库技术与应用索引与视图 一.单选题 1、在SQL Server 2008 中,索引的顺序和表中记录的物理顺序相同的索引是 聚集索引 2、下面对索引的相关描述正确的是 有很多重复值的列适合建索引 3、在使用CREATE INDEX命令创建索引时,FILLFACTOR选项定义的是 填充因子 4、对视图的描述错误的是 被修改的视图只能引用一个基表的列 5、WHITH CHECK OPTION属性对视图有()的用途 检查约束 二.判断题 1、通过创建唯一性索引,可以保证每一行数据的唯一性T 2. 创建索引,在使用ORDER BY 和GROUP BY子句进行设计检索时,可以显著减少查询中分组和排序的时间T 3.通过使用使用,可以在查询过程中使用查询优化器,提高系统性能。T 4. 在一个表中可以创建多个聚集索引,但只有一个非聚集索引,且非聚集索引键值的顺序与表中记录的物理顺序相同F 5. 视图中的数据来自定义视图的查询所引用的表,其更新最终落实到有关基本表的
更新上T 6.创建视图只是为了将数据集中显示,简化用户的数据查询和处理F 7. 创建视图可以简化用户权限的管理,增强安全性。T 三.分录题 1、创建一个视图v_teacher(), 然后通过视图查询所有“计算机学院”教师的信息() 第一空: create view v_teacher as select * from teacher where department='计算机学院' 第二空: select *from v_teacher 附:1、视图是一张虚表2、视图定义包含TOP子句时才能设置排序规则3、可以像查询表一样来查询视图
实验九视图和索引及数据库关系 一、实验目的 使学生掌握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,升序。在数据库引擎查询文档中输入以下代码:
数据库基础与实践实验报告实验四视图与索引 班级:惠普测试142 学号:1408090213 姓名:闫伟明 日期:2016—11-13
1实验目得: 1)掌握SQL进行视图创建得方法; 2)掌握SQL进行视图更新得方法,理解视图更新受限得原因; 3)掌握SQL进行索引创建及删除得方法、 2 实验平台: 操作系统:Windows xp。 实验环境:SQL Server 2000以上版本。 3实验内容与步骤 利用实验一创建得sch_id数据库完成下列实验内容。 1.定义视图V_TCS(定义时不加withcheck option),存放全部计算机系老师得信息。 视图定义代码: CREATE VIEWV_TCSAS ?SELECTtno,tn,sex,age,prof,sal,comm,T.dno FROMT,D WHERET、dno=D.dno AND D.dn=’计算机' 视图查询语句与查询结果截图: SELECT*FROMV_TCS 2.定义视图V_sal,存放全体教师得教师号,教师姓名,教师酬金(工资+岗位津贴),职称信息。视图定义代码: CREATEVIEWV_sal AS SELECTtno教师号,tn教师姓名,sal+comm教师酬金,prof支撑信息 FROMT
视图查询语句与查询结果截图: SELECT*FROMV_sal 3.向V_TCS中插入一条计算机专业教师得新记录,并查询V_TCS视图得全部记录。视图更新代码: INSERTINTOV_TCS SELECT'T10','良瑗’,'女’,20,'讲师',6000,8000,D.dno FROM D ?WHERED。dn='计算机' 视图查询语句与查询结果截图: SELECT*FROM V_TCS
SQL Server 索引和视图 ?索引 1、什么是索引 索引就是数据表中数据和相应的存储位置的列表,利用索引可以提高在表或视图中的查找数据的速度。 2、索引分类 数据库中索引主要分为两类:聚集索引和非聚集索引。SQL Server 2005还提供了唯一索引、索引视图、全文索引、xml索引等等。聚集索引和非聚集索引是数据库引擎中索引的基本类型,是理解其他类型索引的基础。 # 聚集索引 聚集索引是值表中数据行的物理存储顺序和索引的存储顺序完全相同。聚集索引根据索引顺序物理地重新排列了用户插入到表中的数据,因此,每个表只能创建一个聚集索引。聚集索引经常创建在表中经常被搜索到的列或按顺序访问的列上。在默认情况下,主键约束自动创建聚集索引。 # 非聚集索引 非聚集索引不改变表中数据列的物理存储位置,数据与索引分开存储,通过索引指向的地址与表中的数据发生关系。 非聚集索引没有改变表中物理行的位置,索引可以在以下情况下使用非聚集索引: 一、如果某个字段的数据唯一性比较高 二、如果查询所得到的数据量比较少 聚集索引和非聚集索引的区别: 聚集索引非聚集索引
每个表只允许创建一个聚集索引最多可以有249个非聚集索引 物理的重排表中的数据以符合索引约束创建一个键值列表,键值指向数据在数据页中的位置 用于经常查找数据的列用于从表中查找单个值的列 # 其他类型索引 除了以上索引,还有以下类型索引: a、唯一索引:如果希望索引键都不同,可以创建唯一索引。聚集索引和非聚集索引都可以是唯一索引。 b、包含新列索引:索引列的最大数量是16个,索引列的字节总数的最高值是900。如果当多个列的字节总数大于900,切又想在这些劣种都包含索引是,可以使用包含性列索引 c、视图索引:提供视图查询效率,可以视图的索引物理化,也就是说将结果集永久存储在索引中,可以创建视图索引。 d、XML索引:是与xml数据关联的索引形式,是XML二进制blob的已拆分持久表示形式 e、全文索引:一种特殊类型的基于标记的功能性功能,用于帮助在字符串中搜索赋值的词 3、创建索引 语法 create [unique] [clustered | noclustered] index index_name on table_name (column_name ...) [with fillfactor=x] unique唯一索引 clustered聚集索引 noclustered非聚集索引 fillfactor填充因子大小,范围在0-100直接,表示索引页填满的空间所占的百分比。 示例
一、实验步骤 (一)附加上次实验所创建的数据库“db_Library”,并回顾该数据库的数据表信息。(二)练习创建和管理视图 1、使用管理控制台创建一个名为“计算机系借阅信息_VIEW”的视图,要求显示计算机系读者2011-1-1以后借阅的图书信息,包括“读者姓名”、“图书编号”和“借阅日期”三个字段。 打开sql server管理控制台窗口,打开新建视图对话框。在添加表中添加tb_borrow和 tb_reader表,在选中输出复选框中选中:读者编号,图书编号,借阅日期。 use db_library go select * from 读者借阅信息_VIEW where 所在系='计算机'and 借阅日期>'2011_1_1' 2、使用T-SQL语句创建一个名为“读者借阅信息_VIEW”的视图,要求显示所有的读者借阅信息,包括“读者编号”、“姓名”、“系部”、“图书编号”、“图书名称”和“借阅日期”等字段。 use db_library go create view 读者借阅信息_VIEW as select tb_readder.读者编号,tb_reader.姓名,tb_reader所在系,tb_book.图书编 号,tb_book.书名,tb_borrow.借阅日期 from tb_reader,tb_borrow,tb_book where tb_reader.读者编号=tb_borrow.读者编号and tb_book.图书编号=tb_borrow.图书编号 Select * from读者借阅信息_VIEW 3、使用管理控制台查看“读者借阅信息_VIEW”视图的定义信息和依赖的对象。 打开管理控制台,在数据库“db_Library”下的“视图”对象;在左边窗口右击“读者借阅息_VIEW”该视图,在在窗口中选中“查看依赖关系”选项。 4、使用系统存储过程查看“计算机系续借阅信息_VIEW”视图的定义信息和依赖的对象。use db_library go sp_helptext读者借阅信息_VIEW _ sp_depends 读者借阅信息_VIEW 5、使用管理控制台修改“计算机系借阅信息_VIEW”视图,要求显示计算机系或外语系读者2011-1-1以后借阅的图书信息,包括“读者姓名”、“所在系”、“图书编号”和“借阅日期”四个字段。 打开管理控制台,右击“读者借阅信息_VIEW”视图,选择修改,在弹出的复框中选择 “tb-reader, tb_borrow表,选择“读者姓名”、“所在系”、“图书编号”和“借阅日期”四个字段,在所在系里选中计算机系和外语系,并保存该修改。 6、修改“计算机系借阅信息_VIEW”视图的名称为“计算机外语借阅信息_VIEW”。