实验5视图的创建与使用

合集下载

数据库实验五:视图的应用

数据库实验五:视图的应用

数据库实验五:视图的应用数据库实验五:视图的应用一、实验目的与要求:1.实验目的(1)理解视图的概念;(2)掌握视图的使用方法。

(3)理解视图和基本表的异同之处。

2.实验要求(1)参照实验五中完成的查询,按如下要求设计和建立视图:1)基于单个表按投影操作定义视图。

2)基于单个表按选择操作定义视图。

3)基于单个表按选择和投影操作定义视图。

4)基于多个表根据连接操作定义视图。

5)基于多个表根据嵌套操作定义视图。

6)定义含有虚字段的视图。

(2)分别在定义的视图设计一些查询(包括基于视图和基本表的连接或嵌套查询)。

(3)在定义的视图上进行插入、更新和删除操作,分情况讨论哪些操作可以成功完成,哪些操作不能完成,并分析原因。

(4)在实验报告中要给出具体的视图定义要求和操作要求,并针对各种情况做出具体的分析和讨论。

二、实验内容1、实验原理(1)视图是用SQL SELECT查询定义的,创建视图命令格式如下:CREATE VIEW <视图名> AS(2)删除视图的命令格式如下:DROP VIEW <视图名>2、实验步骤与结果(1)调出SQL Server2005软件的用户界面,进入SQL SERVERMANAGEMENTSTUDIO。

(2)输入自己编好的程序。

(3)检查已输入的程序正确与否。

(4)运行程序,并分析运行结果是否合理和正确。

在运行时要注意当输入不同的数据时所得到的结果是否正确。

(5)输出程序清单和运行结果。

(1)参照实验五中完成的查询,按如下要求设计和建立视图:1)基于单个表按投影操作定义视图。

create view v asselect教师编号,姓名from教师2)基于单个表按选择操作定义视图。

create view v_order asselect*from教师where职称='教授'3)基于单个表按选择和投影操作定义视图。

create view v_cuss asselect教师编号,姓名,职称from教师where职称='教授'4)基于多个表根据连接操作定义视图。

视图的创建与应用教案

视图的创建与应用教案

《数据库visual foxpro》教案教学内容:视图的创建与应用教学目标:1、掌握视图的创建方法及步骤2、培养提高学生逻辑思维能力以及分析、解决问题的能力教学重点:视图的创建方法教学难点:利用视图设计器创建本地视图教学过程:(一)复习1、数据库表关系的建立2、设置参照完整性(二)导入新课由怎样同时进行多表浏览引入(三)新课教学1、视图的定义:视图是Visual FoxPro提供的一种定制的、可更改的数据集合。

它是一个定制的虚拟表,为用户提供了一种浏览、使用Visual FoxPro表中数据的有力工具。

2、视图的特点:视图是程序和表的组合,视图是不能单独存在的,它依赖于某一数据库且依赖于某一数据表而存在,是基于数据库的,不是“图”,而是观察表中信息的一个窗口,相当于定制的浏览窗口。

3、视图的分类:本地视图和远程视图。

4、启动视图设计器的方法:方法一:在“文件”菜单,单击“新建”,选中“视图”方法二:在“项目管理器”中方法三:在“数据库设计器”。

方法四:用命令方式 create view5、多媒体操作利用视图设计器创建本地视图。

例一:根据xsda数据库,创建一个单表本地视图“学生表视图”,视图中包含“学号”、“姓名”、“性别”、“入学总分”4个字段内容。

按学号升序排列步骤:(1)打开数据库文件“xsda.dbc”,进入“数据库设计器”窗口。

(2)打开“新建”菜单,选择“视图”项。

(3)单击“向导”,进入“本地视图向导——步骤1-字段选取”窗口。

(4)在该窗口中,可以从几个表或视图中选取字段。

(5)条件筛选(6)排序:选择“学号”作为索引字段,并按“升序”排列。

(7)单击“完成”,输入创建视图的名称“学生表视图”,单击“确认”(8)视图可以像表一样进行操作,如双击它的窗口可以进入“浏览”窗口;或者采用打开“数据库”菜单,选择“浏览”选项,进入视图“浏览”窗口。

6、学生思考下例再演示例二:根据数据库xsda.dbc,创建一个多表本地视图“多表视图”,要求该视图中包含“学号”“姓名”“出生日期”“专业号”“专业名称”6个字段,这些字段来自于表xsqk.dbf和zymc.dbf7、利用视图更新数据(四)课堂小结1、视图是一张虚表,不能单独存在2、视图保存在数据库中,要打开视图须先打开该数据库(五)布置作业P105-106 一、1、8、9 二、1、7、9、10。

数据库视图实验报告

数据库视图实验报告

数据库视图实验报告一、实验目的本次实验的主要目的是深入理解数据库视图的概念、特点和用途,并通过实际操作掌握如何创建、修改和使用视图来优化数据库的查询和管理。

二、实验环境本次实验使用的数据库管理系统为 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、创建视图成功后,通过查询视图能够获取到预期的学生信息,证明视图的定义和数据提取是正确的。

实验五__视图的创建与使用

实验五__视图的创建与使用

视图的创建与使用一、实验目的(1)理解视图的概念。

(2)掌握创建视图、测试、加密视图的方法。

(3)掌握更改视图的方法。

(4)掌握用视图管理数据的方法。

二、实验内容1.创建视图(1)创建一个名为stuview2的水平视图,从数据库Student_info的Student表中查询出性别为“男”的所有学生的资料。

并在创建视图时使用with check option。

(注:该子句用于强制视图上执行的所有修改语句必须符合由Select语句where中的条件。

)create view stuview2asselect*from Studentwhere Sex='男'with check option查看视图:select*from stuview2(2)创建一个名为stuview3的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时。

并在创建时对该视图加密。

(提示:用with ENCRYPTION关键子句)create view stuview3with ENCRYPTIONasselect Cno,Cname,Total_perior from Coursewhere Credit>3查看视图:select*from stuview3(3)创建一个名为stuview4的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。

create view stuview4asselect*from SCwhere Sno=(select Sno from Studentwhere Classno='051'and Sex='女')查看视图:select*from stuview4(4)创建一个名为stuview5的视图,能检索出每位选课学生的学号、姓名、总成绩。

create view stuview5asselect Student.Sno学号,Sname姓名,Grade成绩from Student,SCwhere Student.Sno=SC.Sno查看视图:select*from stuview5若出现如上图所示情况,单击“查询”→IntelliSense→刷新本地缓存然后就解决了。

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

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

实验名称:实验五视图、索引与数据库关系图班级学号姓名日期所在院系指导老师成绩一、试验目的使学生掌握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),要求显示课程编号.课程名、学分。

视图的创建和使用

视图的创建和使用

7.3.2 使用系统存储过程查看视图信息
例 7-3-1 :使用系统存储过程 sp_help 显示
VIEW_SCORE视图的特征信息。 例7-3-2:使用sp_helptext显示 VIEW_SCORE视图在系统表中的定义。 例7-3-3:查看加密视图的定义信息。 例7-3-4:使用sp_depends显示 VIEW_SCORE视图所依赖的对象。
7.2.2 使用Transact-SQL语句 创建视图
例 7-2-3 :使用 Transact-SQL 语句创建新视
图 VIEW_SCORE_NotPass。对数据表和对 字段的选择同上,要求只显示各班不及格的 学生的学号、姓名、课程名及成绩。并加密 视图的定义。 例 7-2-3 :使用 Transact-SQL 语句创建新视 图 VIEW_SCORE_SumAndAverage。 要 求 计算各个班级各门课程的总分及平均分。
7.3.2 使用系统存储过程查看视图信息
系统存储过程 sp_help 可以显示数据库对象
的特征信息, sp_depends 可以显示数据库 对象所依赖的对象,它们可以在任何数据库 对象上运行。sp_helptext可以用于显示视图、 触发器或存储过程等在系统表中的定义。它 们的语法形式分别如下: sp_help 数据库对象名称 sp_helptext 视图(触发器、存储过程) sp_depends 数据库对象名称
7.2.2 使用Transact-SQL语句 创建视图
其中,各参数的说明如下:
schema_name:视图所属架构的名称。 view_name:视图的名称。
column:视图中的列使用的名称。
AS:指定视图要执行的操作。
select_statement:定义视图的 SELECT 语

实验5 视图的创建与使用

实验5 视图的创建与使用

实验5 视图的创建和使用【实验目的】掌握创建与删除视图的方法掌握更新视图的方法掌握视图的查询操作【实验内容】一、创建视图1、用企业管理器创建视图此实验中以mydb1数据库中的test01、student、course、sc表为基础创建视图。

打开企业管理器,展开左侧窗口树形结构上的数据库节点,选中要创建视图的数据库(这里是mydb1),右击数据库中的“视图”对象,选择“新建视图”命令,如图1所示,就会弹出如图2所示的视图设计器窗口。

图【1】新建视图图【2】视图设计器在视图设计器窗口中右击选择“添加表”或单击工具栏上“添加表”按钮,添加所需要的表。

如图3所示。

图【3】添加表在表窗口中各字段名的前面方框里单击,选择相应的字段,或是在下面“列”的下拉列表框中选择字段,并可在“准则”列中输入提取记录时的过滤条件,在“或”列中输入提取记录所用的附加条件,最后在上面窗口中右击,选择“运行”,则在最下面的窗口中就能看到视图的结果。

如图4所示。

图【4】选择视图内容视图设计完后,点击保存图标,在弹出的“另存为”对话框中输入视图名,此实验为score_view ,最后点击“确定”按钮。

如图5所示。

图【5】保存视图2、使用向导创建视图(略)3、用T-SQL语句创建视图格式:CREATE VIEW view_name[(column1,column2,……)] Asselect_statement[with check option]例:创建所有选课学生的信息视图,如图6所示。

(3)重命名表test001为test01。

当发现表名不恰当的时候,需要为表重新命名。

使用系统存储过程sp_rename 可以为表重新命名,语法如下:sp_rename old_table_name , new_table_name请在查询管理器中输入如下的语句:Use mydb1Gosp_rename test001 , test01 /*EXEC sp_rename test001 , test01 也可以*/Go系统执行,将返回如图6所示的结果。

数据库实验——视图的创建与使用

数据库实验——视图的创建与使用

数据库实验——视图的创建与使用数据库是一种利用计算机系统来管理、存储、处理数据的技术,视图则是在数据库中使用的一种技术。

视图是一种虚拟表,实际上并不存储数据,而是使用查询语句从一个或多个表中提取所需的数据。

在本次实验中,将学习视图的创建和使用。

一、实验目的1. 理解视图的概念和特点;2. 掌握视图的创建和使用方法;3. 熟悉视图的应用场景。

二、实验内容1. 视图的创建方法;2. 视图的使用方法;3. 视图的实际应用。

三、实验过程1. 视图的创建方法视图的创建方法如下:CREATE VIEW [视图名称] AS [查询语句];例如,要从学生表中提取所有学生的姓名和学号,则可以使用以下语句创建视图:CREATE VIEW student_info AS SELECT sname, sno FROM student;这样,就创建了一个名为student_info的视图,其中包含学生表中的姓名和学号两列数据。

2. 视图的使用方法创建视图之后,可以像使用普通表一样使用视图。

例如,可以使用SELECT语句来查询视图中的数据,如下所示:SELECT * FROM student_info;这样就可以查询出student_info视图中的所有数据。

3. 视图的实际应用视图在实际应用中有很多用途,例如:(1)简化查询语句当数据库中有较多的关联表时,查询语句会变得非常复杂。

此时,可以使用视图来简化查询语句。

例如,以下语句查询学生所在的班级名称:SELECT s.sname, ame FROM student s INNER JOIN class c ON s.classno = c.classno;使用视图后,查询语句可以变得更简洁:CREATE VIEW student_class AS SELECT s.sname, ame FROM student s INNER JOIN class c ON s.classno = c.classno;SELECT * FROM student_class;(2)保护数据安全例如,可以创建只包含学生姓名和学号的视图,而不包含其他敏感数据,以确保保护学生的隐私。

数据库实验5

数据库实验5
图的用法。 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 的用法。
数据库技术与应用实验
实验 5 索引和视图
数据库技术与应用 实验报告
实验名称: 系(科): 班 级: 学 号: 姓 名: 完成时间:
索引和试图
信息系
南京师范大学中北学院
1
数据库技术与应用实验
实验 5 索引和视图
实验 5 索引和视图
一、实验目的 1.学会使用 SQL Server 管理平台和 Transact-SQL 语句 CREATE INDEX 创建
南京师范大学中北学院
3
数据库技术与应用实验
实验 5 索引和视图
2.使用 SQL Server 管理平台按《课程表》的课程编号列创建唯一性索引。
南京师范大学中北学院
4
数据库技术与应用实验
实验 5 索引和视图
3.分别使用 SQL Server 管理平台和 Transact-SQL 语句为 studentsdb 数据 库的《成绩表》的“分数”字段创建一个非聚集索引,命名为《成绩_index》。

视图创建和使用

视图创建和使用

实训四视图[实验目的]:•掌握视图的定义与删除;•灵活查询与更新视图。

[实验要求]:利用实验一中创建的六个基本表 s,t,c,sc,tc,d,用SQL语句完成如下操作。

[实验步骤]:一、定义与删除视图•创建一个计算机系教师情况的视图 SUB_T,视图由子查询中的三列TNO,TNAME,PROF组成;create view sub_t as select tno,tname,proffrom twhere dept=' 计算机 '•创建一个学生情况视图,包括学号、姓名、课程名及成绩;create view s_c_sc(sno,sname,cname,score)as select s.sno,sname,cname,scorefrom s,c,scwhere s.sno=sc.sno and o=o•创建一学生平均成绩视图;create view s_avg(sno,avg) as select sno,avg(score)from scgroup by sno•创建数学系学生的视图 MA_S;create view ma_s as select *from swhere dept=' 数学 '•创建数学系选修了 C1号课程的学生的视图;create view ma_c1 as select *from s,scwhere dept=' 数学 'and s.sno=sc.sno and cno='C 1'•将每门课程和它的平均成绩定义为一个视图 CNO_AVG;create view cno_avg(cno,avg_sco) as select cno,avg(score) from scgroup by cno•删除计算机系教师情况的视图。

Drop view sub_t二、查询与更新视图•查找视图 SUB_T中职称为教授的教师号和姓名;select tno,tnamefrom sub_twhere prof=' 教授 '•在视图 MA_S上查询年龄大于20岁的学生信息;select *from ma_swhere age>20•在视图 CNO_AVG中,查询平均成绩大于80分的课程号和平均成绩;select cno,avg_scofrom cno_avgwhere avg_sco>80•向计算机系教师视图 SUB_T中插入一条记录(教师号:T6,姓名:李力,职称:副教授);insert into sub_t(tno,tname,prof)values(‘T 6' ,' 李力 ',' 副教授 ')•将计算机系教师视图 SUB_T中刘伟的职称改为“副教授”;update sub_tset prof=' 副教授 'where tname=' 刘伟 '•删除计算机系教师视图 SUB_T中刘伟教师的记录;deletefrom sub_twhere tname=' 刘伟 '•在视图 MA_S上将学号为“20040102”的学生删除。

数据库实验——视图的创建与使用

数据库实验——视图的创建与使用

数据库原理与应用实验报告题目:视图的创建与使用学号:_________________姓名:_________________ 教师:_________________实验题目视图的创建与使用1、实验内容视图的创建与使用2、实验目的与要求1、理解视图的概念。

2、掌握视图创建的方法。

3、掌握更改视图的方法。

3、实验环境已安装SQL Server 2008 企业版的计算机;具有局域网环境,有固定IP;4、实验结果与分析1创建教材的三个数据表Student、Course及SC。

CREATE TABLE Student(Sno CHAR(9),Sname CHAR(20),Ssex CHAR(20),Sage SMALLINT,Sdept CHAR(20));CREATE TABLE SC(Sno CHAR(9),Cno CHAR(4),Grade SMALLINT,);CREATE TABLE Course(Cno CHAR(4),Cname CHAR(40),Cpno CHAR(4),Ccredit SMALLINT,);2向三个表中插入教材中的数据。

INSERT INTO Student values(‘200215121’,’李勇’,’男’,20,’CS’); INSERT INTO Student values(‘200215122’,’刘晨’,’女’,19,’CS’);INSERT INTO Student values(‘200215121’,’王敏’,’女’,18,’MA’);INSERT INTO Student values(‘200215121’,’张立’,’男’,19,’IS’);INSERT INTO Course values(‘1’,’数据库’,’5’,4);INSERT INTO Course(Cno,Cname,Credit) values(‘2’,’数学’,2);INSERT INTO Course values(‘3’,’信息系统’,’1’,4);INSERT INTO Course values(‘4’,’操作系统’,’6’,3);INSERT INTO Course values(‘5’,’数据结构’,’7’,4);INSERT INTO Course (Cno,Cname,Credit) values(‘6’,’数据处理’,2);INSERT INTO Course values(‘7’,’PASCAL语言’,’6’,4);INSERT INTO SC V ALUES (‘200215121’, ‘1’, 92);INSERT INTO SC V ALUES (‘200215121’, ‘2’, 85);INSERT INTO SC V ALUES (‘200215121’, ‘3’, 88);INSERT INTO SC V ALUES (‘200215122’, ‘2’, 90);INSERT INTO SC V ALUES (‘200215122’, ‘3’, 80);3、创建一个名为View_Male_Student的视图,从表Student中查询出性别为男的所有学生的资料。

数据库视图创建学习

数据库视图创建学习

数据库视图创建学习实验5 视图的创建及应⽤1、实验⽬的(1)掌握使⽤T-SQL语⾔创建、修改视图;(2)掌握使⽤T-SQL语句删除、重命名视图;(3)掌握使⽤T-SQL语句,通过视图对基本表进⾏数据操作;(4)掌握使⽤界⾯操作的⽅式创建、修改、删除和重命名视图,以及通过视图对基本表进⾏数据操作的⽅法。

2、实验类型验证型、设计型。

3、相关知识视图是⼀种数据库对象,是关系数据库系统提供给⽤户以多种⾓度观察数据库中数据的重要机制。

视图是从⼀个或者多个数据表或视图中导出的虚表,视图的结构和数据是对数据表进⾏查询的结果。

(1)使⽤T-SQL语句创建视图的语法格式CREATE VIEW [ < owner > .] view_name [ ( column_name [ ,...n ] ) ][WITH ENCRYPTION]ASselect_statementFROM table_name WHERE search_condition[WITH CHECK OPTION]其中:n view_name:为新创建的视图指定的名字,视图名称必须符合标识符规则。

n column_name:在视图中包含的列名,也可以在SELECT 语句中指定列名。

n table_name:视图基表的名字。

n select_statement:选择哪些列进⼊视图的SELECT语句。

n WHERE search_condition:基表数据进⼊视图所应满⾜的条件n WITH CHECK OPTION:迫使通过视图执⾏的所有数据修改语句必须符合视图定义中设置的条件。

n WITH ENCRYPTION:对视图的定义进⾏加密。

创建视图时的注意事项:在CREATE VIEW语句中,不能包括ORDER BY、COMPUTE或者COMPUTE BY ⼦句,也不能出现INTO关键字。

创建视图所参考基表的列数最多为1024列。

创建视图不能参考临时表。

视图的使用实验报告参考模板

视图的使用实验报告参考模板

实验报告课程名称数据库原理实验项目名称实验5:试图的使用班级与班级代码12计算机实验室名称(或课室)专业计算机科学与技术任课教师学号:姓名:实验日期:2014 年05 月13日广东财经大学教务处制姓名实验报告成绩指导教师(签名)2014年月日说明:指导教师评分后,实验报告交院(系)办公室保存。

1.实验目的与要求:1.1实验目的:通过视图的创建过程,理解视图的概念和意义,掌握视图的基本使用方法;1.2 通过视图的设计和定义,掌握建立视图的基本方法,包括通过单张表建立视图和通过多张表建立视图;通过在定义的视图上进行查询、插入、更新和删除操作,理解视图的概念,掌握简单视图查询方法。

2.实验环境与实验器材:计算机,网络环境,投影设备。

实验相关软件:Window xp、SQL Server 2000。

3. 实验内容与步骤本实验通过使用Transact-SQL语句和“企业管理器”两种方法进行视图操作。

3.1 基于单张表投影的视图编写Transact-SQL语句;建立一个基于“课程信息表”,按照投影操作定义的视图---“课程信息简表”,使之仅包括课程名称和课程ID,具体操作步骤如下:首先,进入“SQL查询分析器”界面,然后在“教学管理”数据库下编写如下Transact-SQL语句:create view 课程信息简表asselect 课程ID,课程名称from 课程信息表然后单击系统中“运行”按钮,得到如下的系统窗口,如下图所示:3.2 基于单张表选择的视图编写Transact-SQL语句;建立一个基于“课程信息表”,按照选择操作定义的视图---“管理学课程信息简表”,使之仅显示“管理学”这门课程在课程信息表里的所有信息,具体操作步骤如下: 首先,进入“SQL查询分析器”界面,然后在“教学管理”数据库下编写如下Transact-SQL语句:create view 管理学课程信息简表asselect *from 课程信息表where 课程名称='管理学'然后单击系统中“运行”按钮(绿色的小三角形),得到如下的系统窗口,如下图所示:3.3 基于单张表选择和投影混合的视图编写Transact-SQL语句;建立一个基于“课程信息表”,按照选择和投影操作定义的视图---“管理学课程信息简表”,使之包括课程名称、课程ID、课程类别和学分字段。

实验5 视图的创建与使用分析

实验5 视图的创建与使用分析

XX实验报告学号 :系别专业班级姓名课程名称课程类型学时数实验名称视图的创建和使用实验目的:使用SQL Server Mangement Studio创建视图。

使用Transcat-sql创建视图。

查询视图了解创建和查询视图的方法。

实验要求:据库设计确定要创建的视图。

之前已经完成了其他实验,成功创建了stu中的各个表。

了解创建和查询视图的方法实验内容:要点:视图是从一个表或者几个基本表导出的表。

他与基本表不同,是一个虚表。

数据库只存放视图的定义,而不存放对应的数据,这些数据仍然存放在原来的基本表中,所以一旦基本表的数据发生改变,先从视图中查出的信息也就发生改变,从这个意义上来讲,视图就像一个窗口。

视图一经定义,就可以和基本表一样被查询,被删除,也可以在一个视图上在定义另一个视图,但对视图的(增,删,改)操作有一定的限制。

1. 打开SQL Server2008 ->SQL Server Mangenent Studio命令,弹出连接到服务器的对话框。

2. 在“连接到服务器”的对话框中,单击”连接“按钮。

3. 在“对象资源管理器中”依次展开“数据库“,stu,和视图。

4. 右击视图,然后选择”新建视图“的命令。

5. 在”添加表“对话框中选择student(students)表中的sno,sname,ssex,sage,sdept。

6.sdept的输出选项不可选,在筛选器一栏输入”is“,具体设置如图所示。

7. 将视图的架构属性设置为students。

8. 选择文件进行保存,输入名称”StudentISView“,然后单击确定。

实验结果:视图的创建:建立信息系学生的视图,并要求进行修改和插入操作认保持该视图只有信息系的学生:信息系学生的视图进行更新操作:更新操作后将姓名改变为‘刘晨’,如图所示:对新建的S_G视图进行删除操作;如图所示:将删除在视图中学号为201315127的学生信息。

对新建的F_Student视图进行查询操作:即选择F_Student视图中姓名为:宋敏的同学所有的信息如图所示:实验总结:通过本次实验对SQL-Server语言有了更深入的理解,并且掌握了使用SQL Server Mangement Studio创建视图。

实验五:视图的创建与使用

实验五:视图的创建与使用
理解索引和视图的特点,并掌握创建和删除索引的方 法和视图的查询
1、 建立索引 1. 选择要创建索引的数据库文件夹, 如“S_C”文件夹,并在右边的对象窗口中选 择并打开其中的“表”对象。 2. 选择所要创建索引的表,如“Student”表, 并从“操作”菜单中选择“所有任务”子菜单 下的“管理索引”命令,打开SQL Server 的 索引管理器窗口。 3. 单击其中的“新建”按钮,创建新的索引,并 为其设置相应的属性。 4. 为Student 表创建一个基于“Sname”列 和“Sdept”列的索引IX_Student,其中 Sname列按升序排列,Sdept列按降序排列。
后单击“确定”按钮,关闭视图设计窗口,完成视图
的创建。
7) 创建一个简单视图,统计每门课程的选课人数和最高
分。
实验结
果(结 论及
成功建立了试验所要求的视图
分析)
教师
评语
2、 建立视图并利用视图查询数据 1) 启动SQL Server企业管理器,打开“SQL Server
Enterprise Manager”窗口。 2) 选择要创建视图的数据库文件夹,如“S_C”文件
夹,并在右边的对象窗口中选择其中的“视令,打开SQL Server的视图设计窗口。 4) 在“数据源关系图窗口”中单击鼠标右键,打开“添 加表”窗口,添加XSQK表和Student表。 5) 选择Student表的学号和姓名列,选择Student表的 sno,sname和ssex列,作为视图的显示列。
指导教师 黄川林
实验室 G108
实验日期
分组 情况
何威、李苗苗、杨德龙、孟炜 东、杨琦


1、 建立索引 1. 选择要创建索引的数据库文件夹, 如“S_C”文件夹,并在右边的对象窗口中选 择并打开其中的“表”对象。 2. 选择所要创建索引的表,如“Student”表, 并从“操作”菜单中选择“所有任务”子菜单 下的“管理索引”命令,打开SQL Server 的 索引管理器窗口。 3. 单击其中的“新建”按钮,创建新的索引,并 为其设置相应的属性。 4. 为Student 表创建一个基于“Sname”列 和“Sdept”列的索引IX_Student,其中 Sname列按升序排列,Sdept列按降序排列。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

云南大学职业与继续教育学院
实验报告
Yunnan University
个人成绩
学号姓名成绩
学期: 2017秋季学期
课程名称: 数据库原理及应用实验
任课教师:
姓名:
学号:
年级:
完成时间: 2017 年 10月 17 日
实验名称:视图的创建与使用
一、实验目的:
(1)理解视图的概念。

(2)掌握创建视图、测试、加密视图的方法。

(3)掌握更改视图的方法。

(4)掌握用视图管理数据的方法。

二、实验步骤及内容
1.创建视图
(1)创建一个名为stuview1的水平视图,从Student_info数据库的student表中查询出所有男学生的资料。

并在创建视图时使用with check option。

(2)创建一个名为stuview2的投影视图,从数据库Student_info的Course表中查询学分大于3的所有课程的课程号、课程名、总学时,并在创建时对该视图加密。

(3)创建一个名为stuview3的视图,能检索出“051”班所有女生的学号、课程号及相应的成绩。

(4)创建一个名为stuview4的视图,能检索出每位选课学生的学号、姓名、总成绩。

2.查询视图的创建信息及视图中的数据(1)查看视图stuview1的创建信息。

方法1:通过系统存储过程sp_help查看。

方法2:通过查询表sysobjects。

(2)查看视图的定义脚本
方法1:通过系统存储过程sp_helptext。

方法2:通过查询表sysobjects和表syscomments。

(提示:视图的名称保存在表sysobjects的name列,定义脚本保存在表syscomments的text列)。

(3)查看加密视图stuview3的定义脚本。

3.修改视图的定义
修改视图stuview2,使其从数据库Student_info的Course表中查询总学时大于60的所有课程的课程号、课程名、学分。

4.视图的更名与删除
(1)将视图stuview4更名为stuv4。

(2)将视图stuv4删除。

5.管理视图中的数据
(1)从视图stuview1查询出班级为“051”、姓名为“张虹”的资料。

(2)向视图stuview1中插入一行数据。

学号:20110005,姓名:许华,班级:054,性别:男,家庭住址:南京,入学时间:2011/09/01,出生年月:1983/01/09。

原Student表中的内容有何变化?
答:Student 表中已有“许华”的信息
思考:如向视图stuview1中插入一行数据。

学号:20110006,
姓名:赵静,
班级:054,
性别:女,
家庭住址:南京,
入学时间:2011/09/01,
出生年月:1983/11/09。

会出现什么样的结果?
答:不能插入。

因为stuview1的水平视图,是Student__info数据库的Student表中查询出的所有性别为“男”的学生资料,插入的新数据性别为“女”,所以不能执行。

原因是目标视图指定了WITH CHECK OPTION,而该操作的果行又不符合CHECK OPTION 约束。

原Student表中的内容有何变化?
答:Student 表中无“赵静”的信息。

(3)修改视图stuview1中的数据。

将stuview1中054班、姓名为“许华”同学的家庭地址改为“扬州市”。

原Student表中的内容有何变化?
答:家庭地址由“南京”变为“扬州市”。

(4)删除视图stuview1中班级为054、姓名为“许华”的同学的记录。

原Student表中的内容有何变化?
三、实验总结:
表属于全局模式中的表,是实表;视图属于局部模式的表,是虚表。

视图的建立和删除只影响视图本身,不影响对应的基本表。

在进行视图的跟新操作的时候,要注意该跟新条目的约束条件,例如:在对学生的性别进行跟新的时候,只能将“男”跟新成“女”,或者将“女”跟新为“男”,而不能跟新成其他的字段。

指导教师签名:。

相关文档
最新文档