[SQL-关系型数据库]- 视图使用学习总结

1. 视图(Views)

视图(View)创建使用,视图(View)实际上是一张或者多张表上的预定义查询,这些表称为基表。从视图中查询信息与从表中查询信息的方法完全相同。只需要简单的SELECT…FROM即可。也可以向视图添加 SQL 函数、WHERE 以及 JOIN 语句,也可以呈现数据,就像这些数据来自于某个单一的表一样。

2. 优点

  1. 做复杂的查询逻辑时可以简化你的思考过程,保存复杂的查询过程
  2. 用视图可以隐藏一定的信息,用过滤后查询出来的数据集组成视图,可以访问表中的子集,可以访问表中行的子集,屏蔽建表时底层的基表,实现一定的安全性,
  3. 可以重命名列名。在表中有些列名定义没有代表意义为了让用户看到列名就可以知该列是什么数据,可以在组建视图时重命名列名。
  4. 从多张基表中按一定的业务逻辑抽出用户关心的部分,形成一张虚拟表。
  5. 可以合并分离的数据,创建分区视图 。当数据量大的时候,这时我们就可以使用union关键字,将数据表整合在一起

3.语法结构:创建视图

CREATE [OR REPLACE]FORCE |NOFORCE ]VIEW view_name AS
SELECT column_name(s)
	FROM table_name
WHERE condition

视图总是显示最新的数据!每当用户查询视图时,数据库引擎通过使用视图的 SQL 语句重建数据。在子查询中不能包含ORDER BY ,子查询可以是复杂的SELECT语句

参数作用
OR REPLACE如果视图存在,重建、修改这个视图
FORCE不管引用的表是否存在,都创建这个视图
NOFORCE只有当表存在的时候,才能创建这个视图(默认方式)
WITH CHECK OPTION只有子查询能够检索出的行才能够被插入,修改,或删除。默认情况下对此不作检查,没有指定约束名,系统会自动为约束命名,形式为SYS_Cn
WITH READ ONLY只读,不可对视图做DML操作

4. 修改更新视图

CREATE OR REPLACE VIEW 语法

CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition

5. 撤销视图

DROP VIEW

6. 视图中DML规则

1.冲突

视图定义中出现: GROUP BY、ORDER BY DISTINCT ROWNUM不能使用INSERT,DELETE,UPDATE

7. 视图索引

想要在视图中创建索引,在基表创建即可。

CREATE INDEX [索引名] ON [表名](列名); 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值