這篇文章主要講解了如何使用MySQL視圖,內(nèi)容清晰明了,對此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會有幫助。
我們注重客戶提出的每個要求,我們充分考慮每一個細(xì)節(jié),我們積極的做好成都網(wǎng)站制作、網(wǎng)站建設(shè)服務(wù),我們努力開拓更好的視野,通過不懈的努力,創(chuàng)新互聯(lián)贏得了業(yè)內(nèi)的良好聲譽,這一切,也不斷的激勵著我們更好的服務(wù)客戶。 主要業(yè)務(wù):網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)站設(shè)計,微信小程序定制開發(fā),網(wǎng)站開發(fā),技術(shù)開發(fā)實力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫的技術(shù)開發(fā)工程師。
什么是視圖:
- 視圖是一種基于查詢結(jié)果的虛擬表,數(shù)據(jù)來源的表稱為基本表。
- 視圖的建立和刪除不影響基本表。
- 視圖的插入,修改操作會影響基本表。
- 如果視圖來自多個基本表,那么不可以修改基本表。
- 視圖的用處:
- 1.視圖基于查詢結(jié)果,使得視圖可以隱藏基本表一些不該展示給用戶的數(shù)據(jù)信息(比如某個開發(fā)人員需要用戶信息表,但不應(yīng)該展示給他用戶的密碼信息。)
- 2.視圖是一個虛擬表,可以將查詢信息存儲到視圖中,這樣可以便于操作。
- ......
創(chuàng)建視圖:
- 語法:create view 視圖名 as select語句 [with check option];【select語句可以多表查詢結(jié)果:聯(lián)合查詢、連接查詢】
- with check option會依據(jù)where等條件語句來限制插入和修改操作(比如檢索出來的視圖數(shù)據(jù)是男的,不允許將男的改成女的)
補充:
- 視圖的創(chuàng)建還有一個可選項:視圖算法(這里不講述,想了解的可以百度)
查看視圖:
- 視圖是一個虛擬表,針對表的查看語句都可以使用到視圖中
- 查看所有視圖:show tables/views;
- 查看視圖結(jié)構(gòu):desc/describe/show columns from 視圖名;
- 查看視圖創(chuàng)建語句:show create table/view 視圖名;
視圖的修改:
- 有時候可能發(fā)生定義視圖錯誤,所以這時候會執(zhí)行修改視圖操作。
- 語法:alter view 視圖名 as 新的select語句;
create view user_view as select * from user;
alter view user_view as select username,money from user;
補充:
- 由于視圖是一種虛擬表,還有一種可以修改視圖的方法:create or replace view 視圖創(chuàng)建語句;【將以新的視圖覆蓋舊視圖】
視圖的刪除:
- 語法:drop view 視圖名[,視圖名…];
- 示例:
drop view student_class,student_info;
視圖的數(shù)據(jù)操作:
- 如果視圖來自多個基本表,那么不可以修改基本表。不過理論上update是允許的。
視圖的數(shù)據(jù)查看:
- 語法:select 字段列表 from 視圖名;【與基本表的查詢操作是一致的?!?/li>
視圖的數(shù)據(jù)插入:
- 數(shù)據(jù)來源自多個基本表時,無法進行插入操作。
- 語法:insert into 視圖名 values();【與基本表的插入操作是一致的。】
- 注意:視圖結(jié)構(gòu)來自于基本表,所以要接受基本表的約束。如果某個字段不允許為空,但視圖的插入操作又沒賦值的話,會插入失敗。
視圖的數(shù)據(jù)修改:
- 語法:update 視圖名 set 字段名 = 值 where 條件;【與基本表的修改操作是一致的。】
視圖的數(shù)據(jù)刪除:
- 數(shù)據(jù)來源自多個基本表時,無法進行刪除操作。
- 語法:delete from 視圖名 where 條件;【與基本表的刪除操作是一致的?!?/li>
看完上述內(nèi)容,是不是對如何使用mysql視圖有進一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
名稱欄目:如何使用mysql視圖
URL地址:
http://weahome.cn/article/jgjscp.html