实验6视图1

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验六数据库的视图

一、实验目的

1.掌握创建视图的SQL语句的用法。

2.掌握使用企业管管理器创建视图的方法。

3.掌握使用创建视图向导创建视图的方法。

4.掌握修改视图的方法。

二、实验内容

1、在企业管理器里创建视图

以建立客户编号为‘K00201’的客户全部信息的视图KH操作为例:

(1)执行‚工具—向导‛命令

图7.1

(2)选择表中的字段

(3)‚定义限制‛对话框,限制条件

图7.3 (4)查询视图所得的结果

SELECT * FROM KH

练习:建立关于销售情况的视图XS,包括产品名称,客户名称,订购数量并查询结果。

2. 在企业管理器里修改视图

如将视图KH改为客户编号为‘XXX’ (XXX自己输入相应的值) (1)执行‚设计视图‛命令

(2)选择要在视图中引用的列

(3)输入指定要检索行的准则

(4)执行‚运行‛命令查看结果集

图7.13 3.使用T-SQL语句更新视图

3. 使用企业管理器删除视图

图7.15 执行“删除”命令

练习:在查询分析器中用T-SQL命令完成以下操作: 建立订购数量大于200的销售情况视图XS1(利用XS) 并查询结果CREATE VIEW XS1

AS

SELECT *

FROM XS

WHERE QUANTITY >200

建立各产品的订购数量的总数的视图SL,包括产品编号,订购总量并查询结果CREATE VIEW SL

AS

SELECT PCODE,OQUANTITY

FROM

SALE

查找订购数量=300的客户名称,(利用视图XS1)并查询结果SELECT CNAME

FROM XS1

WHERE

建立所在地为长沙的客户的视图KH1 CREATE VIEW KH1

AS

SELECT *

FROM CUSTOMER

WHERE

通过视图KH1插入记录(‘K00203‘,’王府井’,’长沙’)并查询结果INSERT

INTO KH1

V AULES(‘K00203‘,’王府井’,’长沙’)

INSERT

INTO KH1(CNO,CNAME,SITE)

V ALUES('K00204','大润发','上海')

通过视图KH1插入记录(‘K00204‘,’大润发’,‘上海’)并查询结果CREATE VIEW XS1 AS

SELECT *

FROM XS

WHERE QUANTITY >200

UPDATE KH1

SET C INSERT

INTO KH1(CNO,CNAME,SITE)

V ALUES('K00204','大润发','上海') 将SL视图中C20012产品的总量更新为30。思考是否可以更新?如果不行,为什么?

带有with check option 短语时,SQL2000中的处理方式与SQL标准有什么不同

通过视图KH1将客户编号为‘K00203’的客户名称改为‘平和堂’并查询结果

通过视图KH1将客户编号为‘K00202’的客户名称改为‘步步高’并查询结果UPDATE KH1

SET CNAME=’步步高’

WHERE CNO=’K00202’

◆通过视图KH1删除K00202的信息,并查询结果.

DELECT

FROM

WHERE CNO=’K00202’

◆将SL视图中C20012产品的总量更新为30。思考是否可以更新?如果不行,为什么?UPDATE SL

SET QUANTITT=30

WHERE CNO=’C20012’

删除视图XS DELECT VIEW XS

思考

1.视图一经定义后,就可以象基本表一样用于查询,但DBMS执行对视图的查询过程与执行基本表的查询过程有什么区别?

2.通过视图是否能更新数据?通常哪些视图可以进行更新?

3.带有with check option 短语时,SQL2000中的处理方式与SQL标准有什么不同。

相关文档
最新文档