MySQL—视图(二)
生活随笔
收集整理的這篇文章主要介紹了
MySQL—视图(二)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、創建myview1視圖
create or replace view myview1 as select * from student where ssex='女'1、視圖中插入數據
插入第一條數據
2、查看視圖
select * from myview1運行結果:視圖中新增一條數據
3、插入第二條數據
運行結果:運行成功
但是查詢視圖后,該條數據沒有添加到視圖myview中,并且數據添加到數據表student中。
二、在myview1創建視圖語句中加入with check option
with check option作用:對視圖所做的DML操作的結果,不能違反視圖的WHERE條件的限制。
1、創建視圖
create or replace view myview1 as select * from student where ssex='女' with check option2、插入數據
insert into myview1 values(11,'二麻子1','1995-08-10','男')運行后結果為:
視圖myview1和數據表student都沒有添加成功
三、視圖中修改數據
1、修改第一條數據,修改成功
update myview1 set sname='劉六' where sid=092、修改第二條數據,修改失敗
update myview1 set ssex='男' where sid=09提示:> 1369 - CHECK OPTION failed 'student1.myview1
四、總結:
1、對于update,有with check option,要保證update后,數據要被視圖查詢出來
2、對于delete,有無with check option都一樣
3、對于insert,有with check option,要保證insert后,數據要被視圖查詢出來
4、對于沒有where 子句的視圖,使用with check option是多余的
總結
以上是生活随笔為你收集整理的MySQL—视图(二)的全部內容,希望文章能夠幫你解決所遇到的問題。