mysql中的视图
来源:互联网 发布:随机迷宫生成算法 编辑:程序博客网 时间:2024/05/21 10:31
视图是一个虚拟表,是从一个表或者多个表中导出的表。还可以从已经存在视图的基础上定义。视图一经定义就存储在数据库中,与其对应的数据并没有像表那样在数据库中再存储一份。对视图的操作与对表的操作一样,可以对其插入、删除和修改。当对通过视图看到的数据进行更改时,相应的基本表的数据也会发生变化。同时,若对基本表的数据发生变化,这种变化也会反映到视图中。
1、视图的优点
(1)简单化:简化用户对数据的理解,也可以简化操作。经常使用的查询定义为视图,使得用户不必每次指定查询条件。
(2)安全性:通过视图只能查询和修改所见到的数据。通过视图,可以将用户对数据库的检索限制在数据的不同子集上。
(3)逻辑数据独立性:帮助用户屏蔽真实表结构变化带来的影响。
2、创建视图
语法格式如下
create [or replace] [algorithm = {undefined| merge | temptable}] view view_name[(column_list)] as select_statement [with[cascaded | local] check option]
with [cascaded|local] check option参数表示视图在更新时保证在视图的权限范围之内
algorithm的取值有3个,undefined表示自动选择算法,merge表示将使用的视图语句与视图定义合并起来,使得视图定义的某一部分取代语句对应的部分,temptable表示将视图的结果存入临时表,然后用临时表来执行语句。
cascaded为默认值,表示更新视图时要满足所有相关视图和表的条件,local表示更新视图时满足该视图本身定义的条件即可。
3、查看视图
3.1 describe查看视图基本信息
语法:describe view_name
3.2 show table status查看视图信息
语法: show table status like ‘view_name’
3.3 show create view查看视图详细信息
语法:show create view view_name
3.4在information_schema的表views表中查看详细信息
Select * from information_schema.views;
4、修改视图
4.1 create or replace修改视图
语法:create [or replace] [algorithm={undefined | merge|temptable}] viewview_name[(column_list)] as select_statement [with cascaded | local] checkoption]
4.2 alter修改视图
语法:alter [algorithm = {undefined | merge | temptable}] viewview_name[(column_list)] as select_statement [with [cascaded |local] checkoption]
5、删除视图
语法:drop view [if exists] view_name[,view_name…]
- mysql中的视图
- MySql中的视图重写
- (8)mysql中的视图
- mysql中的视图
- MySQL中的视图操作
- Mysql中的视图
- MySQL中的视图
- mysql 中的视图
- mysql中的视图
- mysql中的视图
- MySQL中的视图
- MYSQL中的视图
- Mysql中的视图
- Mysql中的视图
- mysql中的视图小总
- MySQL中的视图及性能问题
- MySql中的视图的概念及应用
- MySQL中的视图及性能问题
- java 注解的使用
- Android实现图片多点触控自由伸缩
- 方法重写
- (五)四轴——卡尔曼滤波KalmanFilter
- spring bean scope 的几种类型
- mysql中的视图
- Activity的生命周期及加载模式
- Notification的应用
- n对括号有多少种匹配排列方式
- 黑马程序员_Java(StringBuffer,Arrays高级类,integer类,character类)
- Java实现通用组合算法
- GemFI的m5term连接端口退出问题
- 猫猫学iOS(四十七)之网易彩票帮助界面UIWebView的运用
- 机械传动机构