视图定义:在SQL中视图是基于SQL查询语句的结果集的可视化表,视图包含行和列,字段来自于一个或多个数据表,在SQL语句中视图的使用方法跟表类似。
视图跟表类似,为什么要使用视图呢?
视图隐藏了底层的数据表之间的结构关系,所以带来了几个好处:
1.简化了数据访问操作
2.提供了统一访问数据的接口。
3.安全性,即可以允许用户通过视图访问数据的安全机制,而不授予用户直接访问底层表的权限。
缺点:
操作视图比操作基础表要慢,尽量避免在大型表上创建视图
尽量不要创建嵌套试图,多次重复访问基础表造成性能损耗。
复杂视图可以用存储过程代替。
语法:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
视图总是显示最新的数据!每当用户查询视图时,数据库引擎通过使用视图的 SQL 语句重建数据。
查询
SELECT * FROM view_name
更新
-- 对视图做得更新操作相当于重新创建或是替换原来的视图
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s)FROM table_name WHERE condition
删除
drop view view_name
视图数据记录的增删改查:
视图数据是基础表数据的引用,所以对视图数据的增加和修改会影响基础表。
例子:
create view testview as select * from apps;
select * from apps;
新增数据
INSERT INTO testview VALUES(12,'百度','http://baidu.com','CN');
select * from apps;
修改数据
update testview set url='google',app_name='谷歌' where app_name = '百度';
select * from apps;
删除数据
DELETE from testview where app_name = '谷歌';
SELECT * from testview;
网友评论