SQL语法整理(五)-视图

本文详细介绍了SQL中的视图概念,包括其作为虚拟表的含义、作用,如简化用户操作、增强数据安全性及保持表的逻辑独立性。文章探讨了创建视图的语法,包括MySQL和MSSQL的不同之处,并提到了视图的更新、修改和删除规则,特别指出了一些不允许更新视图的情况。
摘要由CSDN通过智能技术生成

视图

含义:从数据库一个或多个表中导出的虚拟表
作用:
方便用户操作: 要求所见即所需,无需添加额外的查询条件,直接查看

增加数据的安全性:通过视图,用户只能查看或修改指定的数据

提高表的独立逻辑性:原有数据表结构的变化,不会影响视图,如果修改原有列,则只需修改视图即可。

  • 创建视图

语法:

MYSQL
create
[algorithm = {undefined | merge | temptable}]
view 视图名[{属性清单}]
as select 语句
[with [cascaded|local] check option];
algorithm:选择的算法
with check option:表示更新视图时要保证在该视图的权限范围之内

undfined:表示MySQL 自动选择所需使用的算法
merge:表示将视图的语句与视图的定义合并,使得视图定义的某一部分取代语句的对应部分
temptable:将视图的结果存入临时表

cascaded:表示更新视图时要满足所有相关视图和表的条件
local:表示更新视图时,要满足该视图本身的定义的条件即可

Mssql
create
view 视图名 as select 语句;

是否有权限创建?(mysql)
通过SQL 查询:
select select_priv,create_view_priv from mysql.user where user = ‘root’;

创建视图

在单表上创建视图:

eg:
create view department_view1 as select * from department;
create view department_view2(name) as select d_name from department;

在多表上创建视图

create algorithm = merge view
employee_view1(name,department
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值