实验五:数据库的视图和图表的定义及使用

合集下载

数据库原理实验5指导书

数据库原理实验5指导书

一实验题目:视图的定义和使用二实验目的:加深对视图的理解,熟练视图的定义、查看、修改等操作三实验内容及要求:(从下面10个题目中选一个)题目一:学生(学号,年龄,性别,系名)课程(课号,课名,学分,学时)选课(学号,课号,成绩)1 根据上面基本表的信息定义视图显示每门课的课名、选课人数、平均成绩2 观察基本表数据变化时,视图中数据的变化。

3 利用视图,查询平均成绩最高的学生。

题目二:图书(书号,书名,价格,出版社)读者(卡号,姓名,年龄,所属单位)借阅(书号,卡号,借阅日期)1 根据上面基本表的信息定义视图显示每本书的书名、借阅次数2 观察基本表数据变化时,视图中数据的变化。

3利用视图,查询借阅次数最多的书。

题目三:商品(编号,品名,进价,库存,售价,厂商编号)顾客(卡号,姓名,电话,积分)厂商(编号,厂址,名称、电话)销售(顾客卡号,商品编号,数量,日期)1 根据上面基本表的信息定义视图显示每种商品的品名、销售数量2 观察基本表数据变化时,视图中数据的变化。

3利用视图,查询销售数量最高的商品。

题目四:图书(书号,书名,作者编号,价格,出版社编号)作者(编号,姓名,电话)出版社(编号,出版社名称,地址)1 根据上面基本表的信息定义视图显示每个出版社的名称、出版书的数量2 观察基本表数据变化时,视图中数据的变化。

3利用视图,查询出版书最多的出版社题目五:零件(编号,名称,颜色,生产车间号)车间(编号,名称,人数,主任)产品(编号,名称,类型)生产(产品编号,生产车间编号)使用(产品编号,使用零件编号,个数)1 根据上面基本表的信息定义视图显示每个产品的编号,使用零件的编号,生产零件的车间号,车间主任2 观察基本表数据变化时,视图中数据的变化。

3利用视图,查询使用零件最多的产品。

题目六:药品(编号,名称,价格,厂商)处方(药品编号,数量,医生编号)医生(编号,姓名,科室,职称)1 根据上面基本表的信息定义视图显示每种药品的品名、销售金额2 观察基本表数据变化时,视图中数据的变化。

数据库的视图操作实验报告

数据库的视图操作实验报告

实验(四)数据库的视图操作实验一、实验目的和要求(1)掌握SQL Server中的视图创建向导和图表创建向导的使用方法;(2)加深对视图和SQL Server图表作用的理解。

(3)掌握数据库安全性的操作方法。

二、实验内容和原理1. 基本操作实验(1)在SQL Server企业管理器中调出Create View Wizard(创建图表向导),按下列Transact-SQL描述的视图定义,创建借阅_计算机图书视图。

CREATE VIEW 借阅_计算机图书AS SELECT 图书.*,借阅.*FROM 图书,借阅WHERE图书.编号=借阅.书号AND图书.类别=‘计算机’(2)在SQL server企业管理器中调出Create View Wizard(创建图表向导),完成在图书-读者数据库中建立一个图书_借阅图表操作。

要求该图表包括图书和借阅两个表,并包括图书与借阅之间的“图书.书号=借阅.书号”外码与被参照表之间的关联。

(3)查看上述实验结果。

如果结果有误,予以纠正。

2. 提高操作实验在学生-课程数据库中用Transact-SQL语句描述下列视图定义。

(1)从学生表中建立查询所有男(女)生信息的视图STU_SEX。

视图的列名为SNO、SNAME、SSEX和SAGE。

(2)从课程表中建立查询所有课程先修课信息的视图课程_PRE。

视图的列名为课程号、课程名称和先修课名称。

(3)从选修表中建立查询成绩大于等于80信息的视图STU_CJ1。

视图的列名为学号、课程号和成绩。

(4)从学生、选修和课程三个表建立查询学生选修情况的视图STU_CJ2。

视图的列名为姓名、课程名称和成绩。

(5)从学生、选修和课程三个表建立查询学生选修情况并且成绩小于80的视图STU_CJ3。

视图的列名为姓名、课程名称和成绩。

(6)利用Transact-SQL命令修改视图STU_SEX。

把视图的列名改为学号、姓名、性别和年龄,把加上“WITH CHECK OPTION”选项。

实验五 视图的创建和使用

实验五 视图的创建和使用

实验五视图的创建和使用5.1概述5.1.1任务一理解视图的概念视图是一个虚拟表,其内容由查询定义。

同真实的表一样,视图包含一系列带有名称的列和行数据。

但是,视图并不在数据库中以存储的数据集合形式存在。

行和列数据来自由定义视图的查询所引用的表,并且在引用视图时动态生成。

对其中所引用的基表来说,视图的作用类似于筛选。

定义视图的筛选可以来自当前或其他数据库的一个或多个表,或者其他视图。

视图被定义后便存放在数据库中,对视图中的数据的操作与对表的操作一样,可以对其进行查询、修改和删除,但对数据的操作要满足一定的条件。

当对视图所看到的数据进行修改时,相应的基表的数据也会发生变化,同时,若基表的数据发生变化,这种变化也会自动地反映到视图中。

5.1.2任务二理解视图的优点用户可以根据自己的实际需要创建视图,使用视图有很多优点,主要有以下几点:1、简单性视图可以屏蔽数据的复杂性,简化用户对数据库的操作。

使用视图,用户可以不必了解数据库的结构,就可以方便地使用和管理数据。

那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。

2、逻辑数据独立性视图可以使应用程序和数据库表在一定程度上独立。

如果没有视图,应用一定是建立在表上的。

有了视图之后,程序可以建立在视图之上,从而程序与数据库表被视图分割开来。

3、安全性通过视图用户只能查询和修改他们所能见到的数据。

数据库中的其他数据则既看不见也取不到。

5.2创建视图创建视图的方法有三种:在创建视图前请考虑如下原则:只能在当前数据库中创建视图.视图名称必须遵循标识符的规则,且对每个用户必须为唯一.此外,该名称不得与该用户拥有的任何表的名称相同.可在其他视图和引用视图的过程之上建立视图.SQLServer 2000允许嵌套多达32级视图若要创建视图,数据库所有者必须授予用户创建视图的权限,并且用户对视图定义中所引用的表或视图要有适当的权限5.2.1任务一使用企业管理器创建视图使用企业管理器创建视图的具体操作步骤如下: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中,选择服务器、数据库、并使数据库展开,再单击“视图”前面的+,就可以看到已存在的视图了。

数据库 实验5 视图

数据库 实验5 视图

实验5 索引和视图1.实验目的(1)掌握使用SQL Server管理平台和Transact-SQL语句CREA TE INDEX创建索引的方法。

(2)掌握使用SQL Server管理平台查看索引的方法。

(3)掌握使用SQL Server管理平台和Transact-SQL语句DROP INDEX删除索引的方法。

(4)掌握使用SQL Server管理平台和Transact-SQL语句CREA TE VIEW创建视图的用法。

(5)了解索引和视图更名的系统存储过程sp_rename的用法。

(6)掌握使用Transact-SQL语句ALTER VIEW修改视图的方法。

(7)了解删除视图的Transact-SQL语句DROP VIEW的用法。

2.实验内容及步骤说明:在SQL Server2005中,有三种视图:标准视图、索引视图和分区视图。

标准视图:组合了一个或多个表中的数据,用户可以获得使用视图的大多数好处。

包括将重点放在特定数据上以简化数据操作。

索引视图:适合聚合多行的查询,不太适合经常更新的基本数据集。

分区视图:支持大型多层网站的处理需要。

SQL Server2005提供了两种创建视图的方法。

SSMS和T-SQL语句。

create view语法形式:create view 【数据库名.】【拥有者.】视图名【(列名1,列名2【…..n】)】AS<select 语句>【with check option】其中,各参数说明如下:数据库名:当前数据库名称拥有者:当前数据库的拥有者,在绑定架构时不可缺。

视图名:用于指定包含的列名,符合标识符的命名规则。

列名:视图中包含的列名。

若使用与源表或视图中相同的列名时,则不必给出列名,如果是计算得到的值则必须指定列名。

select语句:定义视图的select语句。

在视图中可以使用的select语句有一些限制。

with check option:强制针对视图执行的所有数据修改语句都必须符合在select语句中设置的条件。

数据库SQL视图的创建及使用实验报告(共5篇)[修改版]

数据库SQL视图的创建及使用实验报告(共5篇)[修改版]

第一篇:数据库SQL 视图的创建及使用实验报告《数据库基础》实验报告班级__计算机111__学号__xxxxxxxx__姓名__xxx___完成日期____6.20___实验室__理工楼310_ 指导老师xxx成绩____100______实验四、视图的创建及使用(一)实验目的(1)加深对视图的理解。

(2)掌握使用管理工具创建和使用视图的方法。

(3)掌握使用SQL创建和使用视图的方法。

(二)实验内容(1)使用“图书借阅”数据库,在管理工具中创建视图“借阅_计算机图书”,包含借阅类别为“计算机”的图书的信息:(读者编号,姓名,书号,书名,借阅日期)。

(2)直接使用SQL定义(1)中要求的视图并对其进行查询。

(3)在管理工具中建立各类视图(如单表视图、多表视图、分组视图、基于视图的视图等)。

(4)尝试使用insert、update、delete更新视图。

(三)实验具体步骤(1)使用“图书借阅”数据库,在管理工具中创建视图“借阅_计算机图书”,包含借阅类别为“计算机”的图书的信息(读者编号,姓名,书号,书名,借阅日期)。

create view 借阅_计算机图书(Duno,Duname,Shuno,Shuname,JYtime)asselect Duzhe.Duno,Duname,Tushu.Shuno,Shuname, JYtime from Tushu,Duzhe,Jieyue whereDuzhe.Duno=Jieyue.Duno and Tushu.Shuno,=Jieyue.Shuno and Liebie='计算机'(2)直接使用SQL定义(1)中要求的视图并对其进行查询。

select * from 借阅_计算机图书(3)在管理工具中建立各类视图用管理工具建立:在管理工具中,打开图书借阅数据库,右击视图,新建视图,然后依照要求建立各种视图。

《数据库基础》实验报告SQL语句:create view 单表视图asselect Shuname,Shuno,Zuozhe from Tushucreate view 多表视图asselect Shuname,Shuno,Zuozhefrom Tushu,Jieyuewhere Tushu.Shuno,=Jieyue.Shunocreate view 分组视图(Shuno,Duno)asselect Shuno,Duno from Jieyue group by Shunocreate view 基于视图的视图asselect Duno,Duname,Danwei from 单表视图where Sex = '男'(4)尝试使用insert、update、delete更新视图。

实验五:数据库的视图和图表的定义及使用

实验五:数据库的视图和图表的定义及使用
5、编辑数据库图表
在企业管理器中,展开数据库图表所属的服务器、数据库文件夹、数据库以及关系表文件夹。用鼠标右键单击要编辑的关系表,在弹出的菜单中选择“设计关系表”项,则弹出一个编辑关系表的对话框,数据库关系表中的所有操作都是在该对话框中完成的。
6、数据库图表的删除
在企业管理器中,用鼠标右键单击欲删除的数据库关系表。在弹出的菜单上选择“删除”项。在随后出现的删除对象对话框中选中关系表后,单击“删除全部”按钮,即可删除该数据库中被选中的关系表。
ifexists(select*fromsysobjectswherename='Reader')
droptableReader
go
createtableReader(
ReaderIdvarchar(50)primarykey,
Namevarchar(50),
Unitvarchar(50),
Sgenderchar(10)check(Sgender='男'orSgender='女'),
union
select'1003','200215122','2011.02.03'
union
select'1003','200215125','2011.02.03'
union
select'1006','200215126','2011.02.03'
创建视图并修改:
createviewghbas
SELECTdbo.Books.Type,Books.Press,Books.Author,Books.BookName,Books.Price,dbo.Borrow.*

视图和图表的定义及使用-SQL

视图和图表的定义及使用-SQL

(2) 表的索引(逻辑排序)—产生新的索引文件 基本命令格式: INDEX ON <索引关键字>TAG 标记名 [OF 复合索引文件名] [ASCENDING | DESCENDING] 例如: use rsda list index on nl tag nl_index List use
关于排序和索引的说明
注意: 表文件存盘:CTRL+W (万能保存键)
表文件不存盘:ESC
例1:CREATE 学生表
注意: 表文件存盘:CTRL+W
表文件不存盘:ESC
2、显示表记录:
最简单的命令格式:list
例如:list
较复杂的命令格式为: LIST|DISP [<输出列列表>] [<范围>] [FOR <条件>][WHILE <条件>][OFF] [TO PRINTER|TO FILE <文件名>] 命令功能:
表的定义及使用
( No 12:表含视图和基本表)
2014-1-8
内 容
基本表的定义 视图的定义 表的使用(含统计、排序、索引等)
人事档案表(RSDA)
一、基本表的定义
方法1: VF基本格式:
CREATE 新建表名
方法2: SQL基本格式: CREATE TABLE 新建表名 ({字段名1 字段类型 [NULL | NOT NULL] [DEFAULT 字段的默认值表达式] |IDENTITY (种子,递增量) [ PRIMARY KEY | UNIQUE][CH ECK (字段的约束条件表达式)]} [,…] [,字段名2 字段类型,… …)
4、增加表记录
尾部添增命令格式1:append 插入新记录命令格式2:insert [before] 例1: append 例2: insert
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验原理
1、创建视图
假设在图书_读者数据库中已经建立了图书、读者和借阅3个表,它们的结构为:
图书(书号,类别,出版社,作者,书名,定价);
借阅(书号,读者借书证号,借阅日期);
读者(借书证号,姓名,单位,性别,话)如果要在上述3个表的基础上建立一个视图,取名为读者_VIEW,其操作用SQL语句表示为:
SQL平台上应用数据库系统建立多个适用与不同的用户层,使得不同的用户能够得到自己想要的视图,而不破坏数据库的数据,从而保护的数据的完整性、安全性,提高据库的利用率。
指导教师意见
签名:年月日
注:各学院可根据教学需要对以上栏木进行增减。表格内容可根据内容扩充。
insertintoReader
select'200215121','李勇','CS','男','888888888'
union
select'200215122','刘晨','MA','女','857988888'
union
select'200215123','王明','MA','女','999999999'
5、编辑数据库图表
在企业管理器中,展开数据库图表所属的服务器、数据库文件夹、数据库以及关系表文件夹。用鼠标右键单击要编辑的关系表,在弹出的菜单中选择“设计关系表”项,则弹出一个编辑关系表的对话框,数据库关系表中的所有操作都是在该对话框中完成的。
6、数据库图表的删除
在企业管理器中,用鼠标右键单击欲删除的数据库关系表。在弹出的菜单上选择“删除”项。在随后出现的删除对象对话框中选中关系表后,单击“删除全部”按钮,即可删除该数据库中被选中的关系表。
union
select'1008','人文','北京大学出版社','李叶','毛泽东思想',30
union
select'1009','人文','北京大学出版社','好烦','邓小平理论',30
union
select'1010','地理','复旦大学出版社','好烦','中国地理',81
union
select'1011','历史','复旦大学出版社','好烦','中国历史',81
CREATE VIEW读者_VIEW AS SELECT图书.*,借阅.* FROM图书,借阅,读者
WHERE图书.书号=借阅.书号AND借阅.读者借书证号=读者.借书证号;
利用SQL Srever 2000中提供的视图创建向导,来创建读者_VIEW视图。
2、查看和修改视图
视图创建好后,就可以利用它进行查询信息了。如果发现视图的结构不能很好地满足要求,还可以在企业管理器中对它进行修改
ifexists(select*fromsysobjectswherename='Reader')
droptableReader
go
createtableReader(
ReaderIdvarchar(50)primarykey,
Namevarchar(50),
Unitvarchar(50),
Sgenderchar(10)check(Sgender='男'orSgender='女'),
union
select'1003','200215122','2011.02.03'
union
select'1003','200215125','2011.02.03'
union
select'1006','200215126','2011.02.03'
创建视图并修改:
createviewghbas
SELECTdbo.Books.Type,Books.Press,Books.Author,Books.BookName,Books.Price,dbo.Borrow.*
WHERE图书.书号=借阅.书号AND图书.类别=‘计算机’;
(2)在SQL Server企业管理器中调出Create Diagram Wizard(创建图表向导),完成在图书_读者数据库中建立一个图书_借阅图表操作。要求该图表包括图书和借阅两个表。并包括图书与借阅之间的“图书.书号=借阅.书号”外码与被参照表之间的关联。
FROMdbo.BooksINNERJOIN
dbo.BorrowONdbo.Books.BookId=dbo.Borrow.BookIdINNERJOIN
dbo.ReaderONdbo.Borrow.ReaderId=dbo.Reader.ReaderId
删除视图:
Dropviewghb
实验数据
实验总结
Telvarchar(50)
);
go
--建借阅表
ifexists(select*fromsysobjectswherename='Borrow')
droptableBorrow
go
createtableBorrow(
BookIdvarchar(50),
ReaderIdvarchar(50),
DateDateTime,
select'1001','计算机','机械工业出版社','张宏','C#编程',85
union
select'1002','计算机','清华大学出版社','张宏','编程',90
union
select'1003','计算机','清华大学出版社','立时','软件设计师',100
union
insertintoBooks
select'1012','计算机','机械工业出版社','张宏','java编程',88
insertintoBorrow
select'1001','200215124','2011.02.03'
union
select'1002','200215126','2011.02.03'
3、删除视图
删除视图的方法是:首先要在企业管理器中,将鼠标指针指向数据库中的视图文件夹,单击右键。在随后出现的弹出菜单中,选择“删除”项,会出现删除视图对话框。选中欲删除的视图,单击“全部移出”按钮,被选中的视图就会从视图中被移出。
4、创建关联表
假如要在图书_读者数据库中建立一个读者_借阅_图书关系,要求该图表包括图书、借阅和读者三个表,并包括它们之间的“图书.书号=借阅.书号AND借阅.读者借书证号=读者.借书证号”的外码与被参照表之间的关联,即用关联表实现上述视图的功能。在企业管理器中通过向导建立数据库关联表。
union
select'200215124','张力','CS','女','999999999'
union
select'200215125','李小','IS','男','999999999'
union
select'200215126','杜绝','IS','女','999999999'
insertintoBooks
**大学实验报告
学院:专业班级:
姓名
学号
实验组
1
实验时间
指导教师
成绩
实验项目名称
实验五:数据库的视图和图表的定义及使用
实验目的
使学生掌握SQL Server中的视图创建向导和图表创建向导的使用方法,加深对视图和SQL Server图表作用的理解。
实验要求
本实验属于验证型实验,通过实验,加强对课堂讲授知识的理解。开始实验前,必须进行预习,实验过程中,先集中由老师进行具体要求和注意事项的讲解,然后各自独立在机器上完成实验。实验过程中出现问题,在实验指导老师帮助下解决。
primarykey(BookId,ReaderId)
)
altertableBorrowaddconstraintFK_Borrow_Booksforeignkey(BookId)referencesBooks(BookId)
altertableBorrowaddconstraintFK_Borrow_Readerforeignkey(ReaderId)referencesReader(ReaderId)
select'1004','数学','清华大学出版社','张忠','高等数学',50
union
select'1005','数学','北京大学出版社','李叶','概率统计',80
相关文档
最新文档