视图
数据库表称为基表,视图称为虚表
语法:
CREATE VIEW 视图表[(视图字段列表)]
AS
SELECT 语句;
查看视图
show create view xxx;
desc xxx;
删除视图
drop view xxx;
检查视图
with [local | cascaded] check option
e.g.
CREATE VIEW choose_1_view AS
SELECT * FROM choose WHERE score < 60;
INSERT INTO choose_1_view VALUES (NULL, '2012003', 2, 100, NOW());
SELECT * FROM choose;
DELETE FROM choose WHERE choose.`student_no` = '2012003' AND choose.`course_no` = 2;
未经过检查直接插入到table
CREATE VIEW choose_2_view AS
SELECT * FROM choose WHERE score < 60 WITH LOCAL CHECK OPTION;
INSERT INTO choose_2_view VALUES (NULL, '2012003', 2, 100, NOW());
2 queries executed, 1 success, 1 errors, 0 warnings
<e>查询:insert into choose_2_view values (null, '2012003', 2, 100, now())
错误代码: 1369
CHECK OPTION failed 'choose.choose_2_view'
local 与cascade
local:满足了视图检查更新语句才可以
cascade:需要满足针对该视图的所有检查条件更新语句才可以