数据库系统原理实验指导书

更新时间:2023-11-16 17:54:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验一 SQL Server的使用

【实验目的】

熟悉SQL SERVER2000 环境,熟悉企业管理器的使用,能够熟练运用企业管理器完成数据库的建立。

【实验内容】

(从下面10个题目中任选其一) 题目一:

1 利用企业管理器建立学生信息数据库,并定义以下基本表: student(sno , sname ,ssex, sage ,sdept)

course(cno , cname ,cpno ,ccredit) sc(sno ,cno ,grade)

定义主码、外码、和年龄、学分、成绩的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目二:

1 利用企业管理器建立图书管理数据库,并定义以下基本表: 图书(书号,书名,价格,出版社) 读者(卡号,姓名,年龄,所属单位) 借阅(书号,卡号,借阅日期)

定义主码、外码、和年龄、价格的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目三:

1 利用企业管理器建立商品信息数据库,并定义以下基本表: 商品(编号,品名,进价,库存,售价,厂商编号) 顾客(卡号,姓名,电话,积分)

厂商(编号,厂址,名称、电话、经理) 销售(卡号,商品编号,数量,日期)

定义主码、外码、和价格、积分的取值范围。

2 在表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目四:

1 利用企业管理器建立图书信息数据库,并定义以下基本表: 图书(书号,书名,作者编号,价格,出版社编号) 作者(编号,姓名,电话)

出版社(编号,出版社名称,地址) 定义主码、外码、和价格的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目五:

1 利用企业管理器建立零件信息数据库,并定义以下基本表: 零件(编号,名称,颜色,生产车间号) 车间(编号,名称,人数,主任) 产品(编号,名称,车间编号)

使用(产品编号,使用零件编号,个数)

定义主码、外码、和人数、个数的取值范围。

1

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目六:

1 利用企业管理器建立药品信息数据库,并定义以下基本表: 药品(编号,名称,价格,厂商编号) 处方(药品号,数量,医生编号)

医生 (编号,姓名,科室,职称)

定义主码、外码、和数量、价格的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目七:

1 利用企业管理器建立教材数据库,并定义以下基本表: 学生(学号,年龄,性别,系名) 教材(编号,书名,出版社编号,价格) 订购(学号,书号,数量) 出版社(编号,名称,地址)

定义主码、外码、和价格、数量的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目八:

1 利用企业管理器建立雇员信息数据库,并定义以下基本表: 员工(编号,姓名,性别,年龄,部门编号,年薪) 部门(编号,名称,人数,负责人) 项目(编号,名称,负责部门)

定义主码、外码、和年龄、学分、学分的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目九:

1 利用企业管理器建立帐户信息数据库,并定义以下基本表: 帐户(编号,姓名,余额,建立日期,储蓄所编号) 储蓄所(编号,名称,地址,人数,所属城市)

借贷(帐户,借贷类型,金额,日期)

定义主码、外码、和人数、余额的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。 题目十:

1 利用企业管理器建立仓库信息数据库,并定义以下基本表: 仓库(编号,保管员编号,面积)

保管员(编号,姓名,年龄,电话、月薪) 商品(编号,品名,仓库编号、数量,单价) 定义主码、外码、和年龄、面积的取值范围。

2 在三个表中输入若干记录,注意如果输入违反完整性约束条件的记录系统有何反应。

【实验指导】

1.使用企业管理器创建数据库

在企业管理器中创建数据库可以按以下步骤操作:

(1)选中将要使用的Server,用鼠标右键单击数据库,在弹出的快捷菜单中选择“新建数据库”,如图1所示。

(2)打开新建数据库对话框的“常规”选项卡,在名称栏中输入数据库的名称,如图2所示。

2

(3)在图2的对话框中选择“数据文件”选项卡,如图3所示,设置以下内容: 文件名:也叫逻辑文件名,以后就以这个名字来代表这个数据文件。 文件存放的路径:也叫物理文件名。 文件初始大小。

文件大小是否有限制,最大是多少。

文件增长方式是以兆字节增长还是以百分比增长,每次增长的幅度。

(4)选择“事务日志”选项卡,指定存放日志文件的位置、初始大小、增长方式。对每一个日志文件,做和数据文件一样的设置。如图4所示。

(5)设置完成之后,单击“确定”按钮。

以上创建了一个名为LWZZ的数据库,并为它创建了一个主数据库文件和一个日志文件。存放在C盘的\\MSSQL\\data目录下,初始大小是1M,扩展文件时按10%的幅度增长,没有限制大小。

图1 创建新数据库

图2 输入数据库名“LWZZ”

3

图3 设置数据库文件、文件大小和增长方式

图4 设置日志文件、文件大小和增长方式

2.利用企业管理器提供的图形界面创建表 步骤如下:

(1)在树形目录中找到要建表的数据库,展开该数据库。

(2)选择表,单击鼠标右键,在弹出的快捷菜单中选择“新建表”命令,表设计器如图5-20所示。

(3)表设计器的上半部分有一个表格,在这个表格中输入列的属性,表格的每一行对应一列。对每一列都需要进行以下设置,其中前三项是必须在建表时给出的,它们是:列名,数据类型:数据类型,长度,允许空。表设计器的下半部分是特定列的详细属性,包括是否是标识列、是否使用默认值等,逐个定义好表中的列。

(4)定义好所有列后,单击工具栏上的保存按扭,表就创建完成了。

4

图5 表设计器

1、建表过程中,如果出现错误,采用相应的修改和删除方法。 2、数据类型的选取

【注意事项】

5

长春大学计算机科学技术学院

实验报告

日期_______________ 地点______________ 指导教师_____________ 成绩

实验一 SQL Server的使用

一、实验步骤分析

1、给出利用企业管理器创建学生数据库及其基本表的步骤

2、给出添加数据的步骤、数据、以及系统提示

3、写出实验中出现的问题和解决方法

6

实验二 单表查询和连接查询

【实验目的】

加深对单表查询和连接查询的理解,比较两种方法的不同。

【实验内容】

从下面10个题目中选一个,每个题目中第一个查询用连接查询和嵌套查询两种方法完成,其它查询要求用一种方法即可,注意选择哪种方法。

题目一:

学生(学号,年龄,性别,系名) 课程(课号,课名,学分,学时) 选课(学号,课号,成绩)

根据上面基本表的信息完成下列查询。

1 查询选修了数据库原理的学生姓名。

2 查询比计算机系所有学生年龄都大的学生信息。 3列出“张芳”选修的所有课程的课名和成绩。 题目二:

图书(书号,书名,价格,出版社) 读者(卡号,姓名,年龄,所属单位) 借阅(书号,卡号,借阅日期)

根据上面基本表的信息完成下列查询。

1 查询高教出版社的《数据库原理》的读者姓名。 2 查询价格比高教出版社图书都贵的图书信息。

3 查询年龄20岁以下的读者姓名和所借阅图书的书名。 题目三:

商品(编号,品名,进价,库存,售价,厂商编号) 顾客(卡号,姓名,电话,积分) 厂商(编号,厂址,名称、电话)

销售(顾客卡号,商品编号,数量,日期) 根据上面基本表的信息完成下列查询。

1 查询积分100以上的顾客买的商品名称和价格 2 查询比“伊利乳品”所有产品都贵的商品价格 3 查询库存不足100的商品名称和厂商名称及电话 题目四:

图书(书号,书名,作者编号,价格,出版社编号) 作者(编号,姓名,电话)

出版社(编号,出版社名称,地址) 根据上面基本表的信息完成下列查询。 1 查询价格10元以下的图书作者信息

2 查询比“张芳”写的书都便宜的图书信息 3 查询高教出版社出版的图书书名和作者姓名 题目五:

零件(编号,名称,颜色) 车间(编号,名称,人数,主任) 产品(编号,名称,车间编号)

7

使用(产品编号,使用零件编号,个数)

根据上面基本表的信息完成下列查询。 1 查询所有使用红色零件的产品名称。

2 查询比3号、4号、5号车间人数都少的车间生产的产品名称

3 查“张力”当主任的车间的各个产品名称及其所需零件名称、数量 题目六:

药品(编号,名称,价格,厂商) 处方(药品编号,数量,医生编号) 医生 (编号,姓名,科室,职称) 根据上面基本表的信息完成下列查询。 1 列出医生“张芳”开的所有药品名称 。 2 列出比“北方制药”所有药品都贵的药品信息。 3 列出内科所有处方的医生姓名、药品名称、金额 题目七:

学生(学号,年龄,性别,系名)

教材(编号,书名,出版社编号,价格) 订购(学号,书号,数量) 出版社(编号,名称,地址)

根据上面基本表的信息完成下列查询。 1 查询订购高教出版社教材的学生姓名

2 查询比所有高教出版的图书都贵的图书信息 3 列出每位学生姓名、订购教材书名、价格。 题目八:

员工(编号,姓名,性别,年龄,部门编号,年薪) 部门(编号,名称,人数,负责人) 项目(编号,名称,负责部门编号) 根据上面基本表的信息完成下列查询。

1 查询员工张力所在部门的名称。

2 查询比人事处所有员工年薪都高的员工姓名。 3 列出每个部门名称和负责的项目名称。

题目九:

帐户(编号,姓名,余额,建立日期,储蓄所编号) 储蓄所(编号,名称,地址,人数,所属城市) 借贷(帐户,借贷类型,金额,日期)

根据上面基本表的信息完成下列查询。

1 查询在“长春南湖路”储蓄所开户的帐户姓名和余额。 2 查询一次借贷超过10万元的帐户名称和金额。

3 查询比“长春南湖路”储蓄所开户的所有帐户余额都高的帐户名称。题目十:

仓库(编号,保管员编号,面积)

保管员(编号,姓名,年龄,电话、月薪)

商品(编号,品名,仓库编号、数量,单价) 1 查询“张力”保管的仓库编号、面积。

2 查询“波顿牛仔裤”所在仓库的保管员电话和仓库面积。

8

3 查询比保管员张力保管的商品价格都高的商品名称。

【实验指导】

(一)连接查询 语法: SELECT 列 FROM 表1, 表2 WHERE表1.列=表2.列

【例1】查询全体学生的学号与姓名。 Select sno,sname from student

【例2】查询选修了课程的学生学号

Select sno from sc

【例3】查询年龄不在20-23岁之间的学生姓名、系别和年龄 Select sname,sdept sage from student where sage not between 20 and 23

【例4】查询所有姓刘的学生的姓名、学号和性别

Select sname ,sno,ssex from student where sname like ‘刘%’

【例5】查询以”DB_”开头,且倒数第三个字符为i的课程的详细情况 Select * from course where cname like ‘DB\\_%i_ _’ escape ‘\\’;

【例6】 查询计算机科学系年龄在20岁以下的学生姓名 Select sname from student where sdept=’CS’ and sage<20

两个或两个以上的表也可以进行连接。 【例7】查询每个学生及其选修课程的情况

Select student.*, SC.* from student, sc where student.sno=sc.sno

【例8】 查询选修2号课程且成绩在90分以上的所有学生

Select student.sno ,sname from student ,sc where student.sno=sc.sno and sc.cno=’2’ and sc.grade>90

【例9】查询每个学生的学号、姓名、选修的课程名及成绩

Select student.sno,sname,cname,grade from student,sc,course where student.sno=sc.sno and sc.cno=course.cno

(二)嵌套查询

嵌套子查询的执行不依赖于外部嵌套。

9

嵌套子查询的执行过程为:首先执行子查询,子查询得到的结果集不被显示出来,而是传给外部查询,作为外部查询的条件使用,然后执行外部查询,并显示查询结果。子查询可以多层嵌套。

嵌套子查询一般也分为两种:子查询返回单个值和子查询返回一个值列表。 (1)带有IN谓词的子查询

【例1】查询与“刘晨”在同一个系学习的学生。 Select sno,sname ,sdept

From student Where sdept IN

(select sdept from student where sname=’刘晨’)

(2)带有比较运算符的子查询

【例2】找出每个学生超过他选修课程平均成绩的课程号

Select sno,cno from sc x where grade>=(select avg(grade) from sc y where y.sno=x.sno)

(3)带有ANY(SOME)或ALL谓词的子查询

【例3】查询其他系中比计算机科学系某一学生年龄小的学生姓名和年龄

Select sname,sage from student where sage’CS’

(4)带有EXISTS谓词的子查询

【例4】查询没有选修1号课程的学生姓名

Select sname from student where NOT EXISTS (select * from SC where sno=student.sno and cno=’1’)

10

长春大学计算机科学技术学院

实验报告

日期_______________ 地点______________ 指导教师_____________ 成绩

实验二 单表查询和连接查询

一、对实验指导中的相应题目进行上机调试并分析结果

1、第一个查询要求分别用连接查询和嵌套查询完成,给出查询命令、初始数据、执行果,比较不同方法的效率。

2、其它查询要求给出查询命令、初始数据、执行结果,说明你选择连接查询或嵌套查询的原因

11

实验三 统计查询和组合查询

【实验目的】

加深对统计查询的理解,熟练使用聚簇函数

【实验内容】

(从以下10个题目中,任选其一) 题目一:

学生(学号,年龄,性别,系名) 课程(课号,课名,学分,学时) 选课(学号,课号,成绩)

根据上面基本表的信息完成下列查询。

1 查询选修了数据库原理的学生的人数和平均成绩。 2 查询选修3门课 以上的学生姓名。 3列出人数超过1000人的系名。

4 查询没有人选的课和选课人数少于3人的课。 题目二:

图书(书号,书名,价格,出版社) 读者(卡号,姓名,年龄,所属单位) 借阅(书号,卡号,借阅日期)

根据上面基本表的信息完成下列查询。 1 查询书号为tp0103被借阅次数。

2 查询工作单位在计算机系的读者姓名和借阅次数。 3 查阅年龄50以上借阅次数2次以下的读者信息。 4 查询从来没被借阅的图书和借阅次数少于3次的图书。 题目三:

商品(编号,品名,进价,库存,售价,厂商编号) 顾客(卡号,姓名,电话,积分) 厂商(编号,厂址,名称、电话)

销售(顾客卡号,商品编号,数量,日期) 根据上面基本表的信息完成下列查询。 1 查询积分最高的顾客姓名

2 查询销售数量1000以上的商品的厂商电话。 3 查询生产商品5种以上的厂商信息。

4 查询没有顾客买的商品和购买数量少于3个的商品。 题目四:

图书(书号,书名,作者编号,价格,出版社编号) 作者(编号,姓名,电话)

出版社(编号,出版社名称,地址) 根据上面基本表的信息完成下列查询。 1 统计各出版社出版图书的数量。 2 列出多人合著的图书书号和价格。

3 列出高教出版社出版的最贵图书信息。

4 列出没有图书出版的出版社和出版图书少于3种的出版社。 题目五:

12

零件(编号,名称,颜色,生产车间号) 车间(编号,名称,人数,主任) 产品(编号,名称,车间编号)

使用(产品编号,使用零件编号,个数) 根据上面基本表的信息完成下列查询。 1 列出各种颜色零件的个数。

2 查询生产产品3种以上的车间名称。

3 查询使用2种红色零件的产品信息。

4 查询没有被任何产品使用的和只有一个产品使用的零件。 题目六:

药品(编号,名称,价格,厂商) 处方(药品编号,数量,医生编号) 医生 (编号,姓名,科室,职称) 根据上面基本表的信息完成下列查询。 1 统计每种药品的使用数量。

2 统计提供三种以上药品的厂商。

3 统计每个科室“青霉素”用量。

4统计没有医生使用的药品和使用次数3次以下的药品。 题目七:

学生(学号,年龄,性别,系名)

教材(编号,书名,出版社编号,价格) 订购(学号,书号,数量) 出版社(编号,名称,地址)

根据上面基本表的信息完成下列查询。 1统计每位学生订数数量

2 统计每位学生应缴书费。

3 统计订购1000册以上的教材信息。

4 统计没有人定的教材和定数少于3册的教材。 题目八:

员工(编号,姓名,性别,年龄,部门编号,年薪) 部门(编号,名称,人数,负责人) 项目(编号,名称,负责部门编号)

根据上面基本表的信息完成下列查询。

1 查询员工平均年薪10000元以上的部门名称。 2 查询各部门负责项目的个数。 3 列出年薪最低的员工信息。

4 列出没有任何项目的部门和只有一个项目的部门。 题目九:

帐户(编号,姓名,余额,建立日期,储蓄所编号) 储蓄所(编号,名称,地址,人数,所属城市) 借贷(帐户,借贷类型,金额,日期) 根据上面基本表的信息完成下列查询。

1 统计各个储蓄所的帐户个数和余额总数。 2 列出存钱总额10万元以上的日期

13

3 列出储蓄所最少的城市所建的帐户信息

4 列出从没有取过钱的帐户和余额不足100的帐户。 题目十:

仓库(编号,保管员编号,面积)

保管员(编号,姓名,年龄,电话、月薪) 商品(编号,品名,仓库编号、数量,单价) 1 统计每个仓库保管商品的种类数。 2 查询保管多个仓库的保管员信息。 3 查询面积最大的仓库的保管员信息。 4 查询空仓库和面积不足100平的仓库

【实验指导】

1.聚集函数

【例1】查询学生总人数

Select count(*) from s

【例2】查询选修了课程的学生人数

Select count(distinct sno) from sc

【例3】计算1号课程的学生平均成绩 Select avg(grade) from sc where cno=’1’

【例4】查询选修1号课程的学生最高分数 Select max(grade) from sc where cno=’1’

【例5】查询学生200215012选修课程的总学分

select sum(ccredit) from sc,c where sno=’200215012’ and sc.cno=c.cno 2.GROUP BY子句

【例6】求哥哥课程号及相应的选课人数 Select cno,count(sno) from sc group by cno

3.使用HAVING筛选结果

当完成数据结果的查询和统计后,可以使用HAVING关键字来对查询和统计的结果进行进一步的筛选。

【例7】查询选修了3门以上课程的学生学号。

Select sno from sc group by sno having count(*)>3

【例8】在所有价格超过10美元的书中,查询所有平均价格超过18美元的书的种类和平均价格。

select type , avg(price) 'avg_price' from titles

where price>10 group by type

having avg(price)>$18

查询的结果是:

14

type avg_price ------------ --------------------- mod_cook 19.9900 popular_comp 21.4750

(所影响的行数为 2 行)

WHERE子句在求平均值之前从表中选择所需要的行,HAVING子句在进行统计计算后产生的结果中选择所需要的行。

(二)集合查询 1 UNION 并操作

使用UNION语句可以把两个或两个以上的查询产生的结果集合并为一个结果集。 语法格式如下: Select …

UNION [ALL] Select… 说明:

(1)UNION中的每一个查询所涉及的列必须具有相同的列数、相同的数据类型,并以相同的顺序出现。

(2)最后结果集中的列名来自第一个SELECT语句。

(3)若UNION中包含ORDER BY子句,则将对最后的结果集排序。

(4)在合并结果集时,默认从最后的结果集中删除重复的行,除非使用ALL关键字。 【例9】查询计算机科学系的学生及年龄不大于19岁的学生 Select * from s where sdept=’CS’ UNION

Select * from s where asge<=19

【例10】查询选修了课程1或者课程2的学生学号。 Select sno from sc where cno=’1’ UNION

Select sno from sc where cno=’2’

2 INTERSECT 交集

【例11】查询计算机科学系的学生与年龄不大於19岁的学生的交集 Select * from s where sdept=’cs’ INTERSECT

Select * fro s where sage<=19

3 EXCEPT 减法

【例12】 查询计算机科学系的学生与年龄不大於19岁的学生的差集 Select * from s where sdept=’cs’ EXCEPT

Select * from s where sage<=19

15

长春大学计算机科学技术学院

实验报告

日期_______________ 地点______________ 指导教师_____________ 成绩

实验三 统计查询和组合查询

1、给出查询命令、初始数据并分析执行结果

2、第四个查询要求用组合查询和嵌套查询两种方法

3、遇到的问题及解决方法

16

实验四 视图的定义和使用

【实验目的】

加深对视图的理解,熟练视图的定义、查看、修改等操作

【实验内容】

(从以下10个题目中任选其一) 题目一:

学生(学号,年龄,性别,系名) 课程(课号,课名,学分,学时) 选课(学号,课号,成绩)

1 根据上面基本表的信息定义视图显示每门课的课名、选课人数、平均成绩 2 观察基本表数据变化时,视图中数据的变化。 3 利用视图,查询平均成绩最高的学生。 题目二:

图书(书号,书名,价格,出版社)

读者(卡号,姓名,年龄,所属单位) 借阅(书号,卡号,借阅日期)

1 根据上面基本表的信息定义视图显示每本书的书名、借阅次数 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询借阅次数最多的书。 题目三:

商品(编号,品名,进价,库存,售价,厂商编号) 顾客(卡号,姓名,电话,积分) 厂商(编号,厂址,名称、电话)

销售(顾客卡号,商品编号,数量,日期)

1 根据上面基本表的信息定义视图显示每种商品的品名、销售数量 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询销售数量最高的商品。

题目四:

图书(书号,书名,作者编号,价格,出版社编号) 作者(编号,姓名,电话)

出版社(编号,出版社名称,地址)

1 根据上面基本表的信息定义视图显示每个出版社的名称、出版书的数量 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询出版书最多的出版社 题目五:

零件(编号,名称,颜色,生产车间号) 车间(编号,名称,人数,主任) 产品(编号,名称,车间编号)

使用(产品编号,使用零件编号,个数)

1 根据上面基本表的信息定义视图显示每门课的课名、选课人数、平均成绩 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询选课人数最多的课。 题目六:

17

药品(编号,名称,价格,厂商)

处方(药品编号,数量,医生编号) 医生 (编号,姓名,科室,职称)

1 根据上面基本表的信息定义视图显示每种药品的品名、销售金额 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询最畅销的药品。 题目七:

学生(学号,年龄,性别,系名)

教材(编号,书名,出版社编号,价格) 订购(学号,书号,数量) 出版社(编号,名称,地址)

1 根据上面基本表的信息定义视图显示每个学生姓名、应缴书费 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询交费最高的学生。

题目八:

员工(编号,姓名,性别,年龄,部门编号,年薪)

部门(编号,名称,人数,负责人) 项目(编号,名称,负责部门编号)

1 根据上面基本表的信息定义视图显示每个部门名称、年工资总额 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询工资额最高的部门

题目九:

帐户(编号,姓名,余额,建立日期,储蓄所编号) 储蓄所(编号,名称,地址,人数,所属城市) 借贷(帐户,借贷类型,金额,日期)

1 根据上面基本表的信息定义视图显示每个储蓄所名称、储蓄总金额 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询储蓄金额最高的储蓄所。 题目十:

仓库(编号,保管员编号,面积)

保管员(编号,姓名,年龄,电话、月薪) 商品(编号,品名,仓库编号、数量,单价)

1根据上面基本表的信息定义视图显示每个仓库保管员姓名、保管商品价值总额 2 观察基本表数据变化时,视图中数据的变化。 3利用视图,查询保管商品价值金额最高的保管员。

【实验指导】

1.在企业管理器中创建视图

以在PUBS数据库中创建B_TITLEAUTHOR(描述商业类书的情况)视图说明在企业管理器中创建视图的过程。

(1)打开“企业管理器”,在数据库PUBS上单击鼠标右键,在弹出的快捷菜单上选择“新建”→“视图”。

说明:这一步也可以展开数据库,在“视图”上单击鼠标右键,然后选择“新建视图”菜单项。

(2)在所出现的窗口的第一个子窗口中单击鼠标右键,将弹出一个“增加表”快捷菜

18

单,如图1所示。

图1 “增加表”快捷菜单

(3)在快捷菜单中选择“添加表”菜单项,将出现如图2所示的“添加表”对话框。

图2 “添加表”对话框

(4)在如图2所示的“添加表”对话框中选择与视图相关联的表、视图或函数,可以使用Ctrl或Shift键进行多选,选择完毕后,单击“添加”按钮,如图3所示。

19

图3 选择表、视图或函数

(5)在如图1所示的窗口的第二个子窗口中选择创建视图所需的字段,可以指定列的别名、排序方式和规则(本例指定TYPE字段的规则为BUSSINESS)等,如图4所示。注意当视图中需要一个与原字段名不同的字段名,或视图的源表中有同名的字段,或视图中包含了计算列时,需要为视图中的这样的列重新指定名称。

图4 选择列

说明:这一步所选择的字段、规则等的情况相对应的SELECT语句将会自动显示在第三个小窗口中。也可以直接在该小窗口输入SELECT语句。

(6)上一步完成后,单击“保存”按钮,出现如图5所示的保存视图对话框。在其中输入视图名,并单击“确定”按钮,便完成了视图的创建。

视图一经创建成功,其中便包含了所选择的列数据。例如,若创建了B_TITLEAUTHOR视图,则可查看其结构及内容:在视图上单击鼠标右键,选择“设计视图”功能项可以查看并修改视图结构:选择“打开视图”→“返回所有行”将可查看视图的数据内容。

2.通过视图向导创建视图 (1)打开“企业管理器”,选择“工具”菜单中的“向导”菜单项,出现如图6所示的“选择向导”对话框。

20

本文来源:https://www.bwwdw.com/article/itdv.html

Top