mysql的視圖是什么

mysql的視圖是mysql數(shù)據(jù)庫中存放數(shù)據(jù)的一個接口,也可以說是虛擬的表;這些數(shù)據(jù)可以是一個或幾個基本表或視圖的數(shù)據(jù),也可以是用戶自已定義的數(shù)據(jù);當(dāng)基本表里面的數(shù)據(jù)發(fā)生變動時,視圖里面的數(shù)據(jù)隨之變動。

mysql的視圖是什么

本文操作環(huán)境:Windows7系統(tǒng),mysql5.0版,Dell G3電腦。

mysql的視圖是什么?

mysql View?

視圖是mysql數(shù)據(jù)庫中存放數(shù)據(jù)的一個接口

介紹?

視圖是存放數(shù)據(jù)的一個接口,也可以說是虛擬的表。這些數(shù)據(jù)可以是從一個或幾個基本表(或視圖)的數(shù)據(jù)。也可以是用戶自已定義的數(shù)據(jù)。其實視圖里面不存放數(shù)據(jù)的,數(shù)據(jù)還是放在基本表里面,基本表里面的數(shù)據(jù)發(fā)生變動時,視圖里面的數(shù)據(jù)隨之變動。

作用?

1,mysql view讓查詢變得很清晰,視圖中存放的數(shù)據(jù)就是我們所要的數(shù)據(jù),并且可以簡化用戶操作。

2,mysql view讓數(shù)據(jù)更安全,視圖中的數(shù)據(jù),不存在視圖中,還是在基本表里面,通過視圖這層關(guān)系,我們可以有效的保護我們的重要數(shù)據(jù)

類型?

mysql的視圖有三種類型:MERGE、TEMPTABLE、UNDEFINED。如果沒有ALGORITHM子句,默認(rèn)算法是UNDEFINED(未定義的)。算法會影響MySQL處理視圖的方式。

1,MERGE,會將引用視圖的語句的文本與視圖定義合并起來,使得視圖定義的某一部分取代語句的對應(yīng)部分。

2,TEMPTABLE,視圖的結(jié)果將被置于臨時表中,然后使用它執(zhí)行語句。

3,UNDEFINED,MySQL將選擇所要使用的算法。如果可能,它傾向于MERGE而不是TEMPTABLE,這是因為MERGE通常更有效,而且如果使用了臨時表,視圖是不可更新的。

語法?

CREATE?[OR?REPLACE]?[ALGORITHM?=?{UNDEFINED?|?MERGE?|?TEMPTABLE}] VIEW?view_name?[(column_list)] AS?select_statement [WITH?[CASCADED?|?LOCAL]?CHECK?OPTION]

mysql的視圖是什么

該語句能創(chuàng)建新的視圖,如果給定了OR REPLACE子句,該語句還能替換已有的視圖。select_statement是一種SELECT語句,它給出了視圖的定義。該語句可從基表或其他視圖進行選擇。

該語句要求具有針對視圖的CREATE VIEW權(quán)限,以及針對由SELECT語句選擇的每一列上的某些權(quán)限。對于在SELECT語句中其他地方使用的列,必須具有SELECT權(quán)限。如果還有OR REPLACE子句,必須在視圖上具有DROP權(quán)限。

視圖屬于數(shù)據(jù)庫。在默認(rèn)情況下,將在當(dāng)前數(shù)據(jù)庫創(chuàng)建新視圖。要想在給定數(shù)據(jù)庫中明確創(chuàng)建視圖,創(chuàng)建時,應(yīng)將名稱指定為db_name.view_name。

mysql>?CREATE?VIEW?test.v?AS?SELECT?*?FROM?t;

表和視圖共享數(shù)據(jù)庫中相同的名稱空間,因此,數(shù)據(jù)庫不能包含具有相同名稱的表和視圖。

視圖必須具有唯一的列名,不得有重復(fù),就像基表那樣。默認(rèn)情況下,由SELECT語句檢索的列名將用作視圖列名。要想為視圖列定義明確的名稱,可使用可選的column_list子句,列出由逗號隔開的ID。column_list中的名稱數(shù)目必須等于SELECT語句檢索的列數(shù)。

SELECT語句檢索的列可以是對表列的簡單引用。也可以是使用函數(shù)、常量值、操作符等的表達式。

對于SELECT語句中不合格的表或視圖,將根據(jù)默認(rèn)的數(shù)據(jù)庫進行解釋。通過用恰當(dāng)?shù)臄?shù)據(jù)庫名稱限定表或視圖名,視圖能夠引用表或其他數(shù)據(jù)庫中的視圖。

推薦學(xué)習(xí):《mysql視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點贊9 分享