设为首页 加入收藏

TOP

SQL应用与开发:(四)视图的应用(二)
2015-11-21 02:07:17 来源: 作者: 【 】 浏览:2
Tags:SQL 应用 开发
ROM 珠宝信息

WHERE 珠宝售价>450

执行上述语句创建视图后,通过下属SELECT语句来查看视图中的信息:

SELECT *

FROM 珠宝信息_VIEW

执行后,便得到了我们珠宝售价大于450的珠宝相关信息。

然后对视图“珠宝信息_VIEW”的定义进行修改。将视图中返回的行限定为“珠宝售价”大于550的信息。则用下述的语句进行修改该视图的定义:

ALTER VIEW 珠宝信息_VIEW

AS

SELECT 珠宝商编号,珠宝商名称,珠宝售价

FROM 珠宝信息

WHERE 珠宝售价>550

成功执行上述语句后,使用SELECT语句查看修改后的视图中信息:

SELECT *

FROM 珠宝信息_VIEW

执行后,便得到了我们珠宝售价大于550的珠宝相关信息。

3.通过视图修改数据

在视图中对其中的数据进行修改,实际上就是对基表中的数据进行修改。这是由视图本身的性质决定的,因为视图是一个虚拟表, 它并不存在数据,数据只是存在于基表中。

如果创建视图时,在CREATE VIEW语句中,有下列内容,则该视图中的数据时不可修改的:

SELECT列表中含有DISTINCT;

SELECT列表中含有表达式,诸如计算列、函数等;

在FROM子句中引用多个表;

引用不可更新的视图;

GROUP BY或HAVING子句。

通过视图修改是通过INSERT、UPDATE和DELECT子句来完成的。

3.1 INSERT语句的使用

举例来说,在数据库”销售管理系统“中,基于”供应商信息“表创建一个名为”供应商_VIEW“的视图,该视图中包含列”供应商编号“、”供应商名称“、”联系人姓名“和”联系电话“。

CREATE VIEW 供应商信息-VIEW

AS

SELECT 供应商编号,供应商名称,联系人姓名,联系电话

FROM 供应商信息

成功运行上述语句后,打开视图”供应商_VIEW“,可以对其中的信息进行查看。如果要在视图中添加一行数据,则用INSERT 语句实现:

INSERT INTO 供应商信息_VIEW

VALUES(1010,'黄河科技','吴奎','13202204586')

然后利用下述SELECT语句对插入的数据行后的视图查询:

SELECT *

FROM 供应商信息_VIEW

查询结果,便是我们在视图的最后添加了一行数据,并且打开相应的基表,在基表的最后一行也添加了上述数据。

3.2 UPDATE语句的使用

更新视图中数据和更新基表中的数据的方式一样,但是当视图是基于多个基表的数据时,每次更新操作只能是更新来自一个基表中的数据列的值。

例如,将前面创建的视图”操作人员信息_VIEW“中,添加的姓名为”张蓉蓉“的操作人员的”联系电话“改为 13933456770:

UPDATE 操作人员信息_VIEW

SET 联系电话='13933456770'

WHERE 操作人员姓名='张蓉蓉'

打开视图”操作人员信息_VIEW“,对其中的数据进行查看,发现最后一行中的列”联系电话“中的数据变为13933456770。

3.3 DELETE语句的使用

通过视图删除数据的方法与通过基表删除数据的方法一样,最终还是体现为从基表中删除数据。当一个视图基于两个或者两个以上的基表时,不允许删除视图中的数据。

例如,删除上述”供应商信息_VIEW“视图中天剑的那一行数据。

DELETE FROM 供应商信息_VIEW

WHERE 供应商编号=1010

执行上述语句后,打开视图”供应商信息_VIEW“,则在最前面添加”供应商编号“为1010的一行数据被删除;同样,在基表中的着一行数据也被删除了。

4.学习小结

视图,无论是对于用户还是对于操作人员来说都是一个很重要的工具,简单来说,就是一个虚拟的表,而这个表是你想要的结果,从基表中查询出来的结果,就展现在这个虚拟表中,满足应用的情况下,随时更改你想要的结果,简单而实用。

通过本章节的学习,感觉数据库的知识,实用性很强,努力去实战一下,把知识融会一下。

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇SQLLEN()函数,casewhen,聚合函数.. 下一篇sqlserver、mysql、oracle各自的..

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: