视图是由查询语句定义的虚拟表。视图中的数据可以来自一张或多张表。 但对用户来说,视图就如同一张真的表。
使用视图的原因:
(1)使复杂的查询易于理解和使用。
(2)隐藏一些数据,提高安全性。
(3)将函数的返回结果映射成视图。
1.创建视图
CREATE TABLE person (
id int,
name varchar(20),
password varchar(20)
);
CREATE VIEW v_person AS SELECT id, name from person;
可以用“temp”关键字创建一张临时视图,当会话结束时,这张视图就消失。
CREATE TEMP VIEW v_person AS SELECT id, name from person;
可以为视图的列定义另一个名称。
CREATE VIEW v_person(v_Id, v_name) AS SELECT id, name from person;
2.更新视图
UPDATE v_person SET name='Dave' where id =1;
注:在视图v_person中更新数据后,表person中也更新该数据。
3.插入数据
INSERT INTO v_person VALUES (3,'Tom');
注:在视图v_person中插入数据后,表person中也会插入该数据,只是password字段为空。
3.删除数据
DELETE FROM v_person where id=1;
注:在视图v_person中删除入数据后,表person中也删除该数据。
4.删除视图
DROP VIEW v_person;
另外,可以通过定义“规则”或“触发器”来插入/删除/更新视图。