溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

MySQL數據庫視圖

發(fā)布時間:2020-07-13 12:55:12 來源:網絡 閱讀:426 作者:孤獨一夜 欄目:MySQL數據庫

day05 MySQL數據庫視圖

一、視圖概述:

    視圖是一個虛擬表,是從數據庫中一個或多個表中導出來的表,內容是由查詢定義的。數據庫中只存在視圖的定義,而沒有相關的數據,這些數據四存放在原來的表中。因此,視圖是依賴于原來的表中的數據,表中數據改變,視圖中的數據也會改變。

    視圖的作用:

        1、具有簡單性、

        2、具有安全性、

        3、邏輯數據獨立性、

二、視圖:

    1、創(chuàng)建視圖:

        create view 視圖名 as select * from 表名;

    注意事項:

        1、運行創(chuàng)建視圖的語句需要用戶具有創(chuàng)建視圖(create view)的權限,如果加上了【orreplace】時,還需要用戶具有刪除視圖的權限。

        2、select語句不能夠包含from子句中的子查詢。

        3、select語句不能引用系統(tǒng)或用戶變量。

        4、select語句不能引用預處理語句參數。

        5、在定義中引用的表或視圖必須存在。

        6、在定義中不能引用temporary表和不能創(chuàng)建temporary視圖。

        7、視圖中定義的表必須存在。

        8、不能講觸發(fā)程序和視圖關聯(lián)在一起。

        9、在定義視圖中允許使用order by,但是,如果從特定視圖進行選擇,而該視圖使用了具有自己order by的語句,它將被忽略。


    2、查看視圖結構

        describe  視圖名;
        或者
        desc  視圖名;

    3、查看視圖數據

        show table status like ‘視圖名’;

    4、查看視圖的詳細定義

        show table view 視圖名;

    5、修改視圖

        create or replace view 視圖名 as select 語句;

    6、更新視圖

        視圖的更新其實就是數據表的更新,更新視圖是指通過視圖來插入、更新、刪除表中的數據。因為視圖就是一個虛擬表,其中是沒有數據的。

        update 表名 set 視圖字段1=‘某個值’,視圖字段2=‘某個值’where 條件;

    7、刪除視圖

        drop view if exists 視圖名 ;
        譯:if exists:是判斷該視圖是否存在,如果存在就執(zhí)行刪除。沒有就不執(zhí)行

三、結束語

    學到這兒視圖的相關知識就學完了。同時對MySQL數據庫的基礎知識也就學完了。接下來我們就要進入到提升篇的學習。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI