新聞中心
在進行數(shù)據(jù)庫設(shè)計和開發(fā)工作時,數(shù)據(jù)庫視圖是一個重要的組成部分。它能夠方便地獲取必要的信息,使業(yè)務(wù)決策更加有效。然而,命名數(shù)據(jù)庫視圖并不是一件簡單的工作。一個好的命名規(guī)范是必要的,因為它能夠幫助數(shù)據(jù)庫管理員更加容易地理解和管理視圖。在這篇文章中,我們提供幾點建議,幫助您更好地命名數(shù)據(jù)庫視圖。

1. 明確視圖的目的
在命名視圖時,我們應(yīng)該考慮到它在數(shù)據(jù)庫中的作用以及目的。這將有助于其他使用者理解這個視圖所代表的信息。例如,如果視圖是以產(chǎn)品為基礎(chǔ)的銷售統(tǒng)計數(shù)據(jù),那么視圖名稱可以是”SalesByProduct”。這提供了明確的視圖目的,使得其他使用者更容易理解視圖的作用和內(nèi)容。
2. 使用描述性詞匯
視圖名應(yīng)當使用描述性的詞匯來描述其中包含的數(shù)據(jù)。對于具有明確的含義的術(shù)語或領(lǐng)域特定的縮寫詞,可以使用有效的代替詞或術(shù)語,例如“客戶”而非“Cstmr”或“客戶信息”而非“CstmrInfo”。使用清晰的詞匯可以幫助同事們快速了解您的意圖,并允許他們理解視圖中的數(shù)據(jù)。
3. 遵循命名規(guī)范
為了確保所有人都能夠輕松地閱讀并理解視圖名稱,使用一致的命名規(guī)范非常重要。對于每個團隊和組織,都應(yīng)該建立一套全面而嚴格的命名規(guī)范,以便在命名時始終保持一致性。這有助于降低混淆的發(fā)生,減少錯誤。
4. 考慮重要性和優(yōu)先級
對于重要的視圖和具有優(yōu)先級的數(shù)據(jù),建議使用常見的縮寫和助記符。盡量確保這些縮寫和助記符是和領(lǐng)域有關(guān)的。這將有助于提高可讀性和可理解性,并且使其更容易被理解并且在通信中能夠快速而準確地表達。例如,“Sls”是一個通用的縮寫,用于表示“銷售”,并且具有明確且易于識別的含義。
5. 避免歧義和沖突
在為視圖命名時,必須確保沒有歧義或者沖突發(fā)生。不同視圖名稱之間應(yīng)該有明顯的差異,以便用戶能夠輕松地進行區(qū)分。如果需要,可以在名稱中使用前綴或后綴來確保名稱的獨特性。盡可能使用描述性且有意義的前綴或后綴。例如,“vw”前綴可以用于表示“視圖”,而“_data”后綴可以用于表示這是視圖中的數(shù)據(jù)內(nèi)容。
結(jié)論
在設(shè)計和開發(fā)數(shù)據(jù)庫時,數(shù)據(jù)庫視圖是一個重要的組成部分。一個好的視圖命名規(guī)范可以幫助其他使用者快速理解和管理視圖,并確保命名規(guī)范的一致性。在命名視圖時,應(yīng)明確視圖的目的,使用描述性詞匯,遵循命名規(guī)范,考慮視圖的重要性和優(yōu)先級,以及避免歧義和沖突。這個過程需要全員參與和協(xié)同努力,但這將建立一個高效的數(shù)據(jù)庫命名約定,有助于未來減少錯誤和提高工作效率。
相關(guān)問題拓展閱讀:
- 數(shù)據(jù)庫如何創(chuàng)建視圖
數(shù)據(jù)庫如何創(chuàng)建視圖
創(chuàng)建視圖的理想步驟:
一般來說,視圖創(chuàng)建可以分為五步走:
之一步:先考慮select語句的編寫。我們知道,視圖其實就是一個select語句的,所以,我們建立視圖的之一步,就是考慮這個select語句的如何編寫。這個select語句編寫的是否合理,執(zhí)行效率的高低直接影響著這個視圖的性能,在Select語句中,可能還會有格式的控制、內(nèi)容的編排等等。如在Select語句中,可以把一些字段合并成一個字段;也可以把相關(guān)的內(nèi)容進行倒置等等。這些功能都是Select語句完成的。所以可以這么說,Select語句的編寫是視圖建立的基礎(chǔ)。
第二步:對這個Select語句進行測試。當我們編寫好Select語句之后,就需要在數(shù)據(jù)庫中執(zhí)行這條語句,看其能否查詢到我們想要的值。在對
Select語句進行測試的時候,需要注意一個問題,有時候Select查詢語句可以查到準確的數(shù)據(jù),但是在以這條語句建立視圖的時候,可能就會通不過。
如在一些表之間的連接查詢的時候,如果兩個表中有個字段名相同,是可以的。因為他們除了字段名字之外,還有表名一起來定義這個字段。如A.name與
B.name。這是不算重名的。但是,若在建立視圖的時候,這就會被認為是重復(fù)的列明,需要對其中的一個列名進行重定義。這一點在數(shù)據(jù)庫視圖建立的時候,
要特別的注意。
第三步:考慮查詢結(jié)果的準確性。通過查詢語句把我們想要的結(jié)果查詢出來后,我們就需要看看這個液稿肆結(jié)果是否滿足我們的需要。在這個過程中,我們主要注意兩
點。一是形式字段是否齊全。在一些應(yīng)用系統(tǒng)中,若數(shù)據(jù)庫的視圖要能夠被前臺的
應(yīng)用程序
調(diào)用的話,則必須包含一些形式字段。如筆者以前在設(shè)計一個
ERP系統(tǒng)
的時候,若前臺系統(tǒng)要調(diào)用數(shù)據(jù)庫中的視圖的時候,必須包含記錄更新時間、更新者、記錄創(chuàng)建時間、創(chuàng)建者等相關(guān)信息。若缺乏這些信息的話,則前臺
調(diào)用這張視圖的時候,就會出現(xiàn)錯誤。故在考慮查詢結(jié)果準確性的問題的時候,就要考慮到前臺應(yīng)用程序的需要,看看這些形式字段是否齊全。二是實體內(nèi)容的完整
若字段內(nèi)容顯示不足的話,則以后要添加字段的話,會比較麻煩,有一定的工作量。所以在這個檢驗的時候,需要根據(jù)視圖的實際功用,確定視圖需要顯示的內(nèi)容。
第四步:視圖的修飾。有時候,為了閱讀的方便,我們需要對查詢結(jié)果進行一些修飾。如現(xiàn)在有兩張表,一張是員工基本信息表,這表中有員工姓名、員工職位編號
等等;另一張表是職位基本信息表,在這表中有職位編號、職位名稱。我們希望在視圖中能夠如下顯示:“職位:員工名字”,如
數(shù)據(jù)庫工程師
:Victor。也
就是說,把兩個字段合并起來,并且在中間加入一個冒號敬敏。這些格式性的內(nèi)容都是在查詢的時候?qū)崿F(xiàn)的。所以,我們確認查詢的結(jié)果沒有錯誤之后,接下來就要確認
格式問題。若能夠在視圖中規(guī)范這些格式問題,則前臺的程序設(shè)計就會相對來說比較簡單
第五步:建立視圖。等到上面四步都確認無誤后,我們就要根據(jù)上面鬧轎的查詢語句來建立視圖了。不過在這一步過程中,也有一些問題需要注意。一是視圖名字的命
名規(guī)格。我們除了遵循數(shù)據(jù)庫的強制命名格式之外,如不能以數(shù)字開頭等等,還需要遵循一些軟規(guī)則。如視圖更好能夠以V開頭,跟基礎(chǔ)表進行隔開;另外在視圖命
名中,能夠根據(jù)應(yīng)用模塊的不同,來進行分類,并體現(xiàn)在視圖的名字中。這對于我們后續(xù)視圖的查找都具有非?,F(xiàn)實的意義。二是雖然可以在視圖中直接更新基礎(chǔ)
表,不過,為了安全與數(shù)據(jù)統(tǒng)一的考慮,我們這些過來人一般都不建議通過視圖來直接更新基礎(chǔ)表中的數(shù)據(jù)。雖然數(shù)據(jù)庫提供了類似的功能。若要更改相關(guān)數(shù)據(jù)的
話,則直接去更改基礎(chǔ)表的內(nèi)容為好。在建立視圖的時候,默認情況下是不能夠通過視圖直接更新基礎(chǔ)表。
視圖是一個虛擬表,其內(nèi)容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數(shù)據(jù)。但是,視圖并不在數(shù)據(jù)庫中以存儲的數(shù)據(jù)值集形式存在。行和列數(shù)據(jù)來自由定義視圖的查詢所引用的表,并且在引用視圖時動態(tài)生成。
對其中所引用的基礎(chǔ)表來說,視圖的作用類似于篩選。定義視圖的篩選可以來自當前或其它數(shù)據(jù)庫的一個或多個表,或者其它視圖。通過視圖進行查詢沒有任何限制,通過它們進行數(shù)據(jù)修改時的限制也很少。
視圖是存儲在數(shù)據(jù)庫中的查詢的SQL 語句,它主要出于兩種原因:安全原因, 視圖可以隱藏一些數(shù)據(jù),如:社會保險基金表,仿早可以用視圖只顯示姓名,地址,而不顯示社會保險號和工資數(shù)等,另一原因是可使復(fù)雜的查詢易于理解和使用。這個視圖就像一個“窗口”,從中只能看到你想看的數(shù)據(jù)列。這意味著你可以在這個視圖上使用SELECT *,而你看到的將是你在視圖定義里給出的那些數(shù)據(jù)列:
既然視圖的定義是基于基本表的,哪為什么還要定義視圖呢?這是因為合理地使用視圖能夠帶來許多好處:
1、 視圖能簡化用戶操作
視圖機制使用戶可以將注意力集中在所關(guān)心地數(shù)據(jù)上。如果這些數(shù)據(jù)不是直接來自基本表,則可以通過定義視圖,使數(shù)據(jù)庫看起來結(jié)構(gòu)簡單、清晰,并且可以簡化用戶的的數(shù)據(jù)查詢操作。例如,那些定義了若干張表連接的視圖,就將表與表之間的連接操作對用戶隱藏起來了。換句話說,用戶所作的只是對一個虛表的簡單查詢,而這個虛表是怎樣得來的,用戶無需了解。
2、 視圖使用戶能以多種角度看待同一數(shù)據(jù)
視圖機制能使不同的用戶以不同的方式看待同一數(shù)據(jù),當許多不同種類的用戶共享同一個數(shù)據(jù)庫時,這種靈活性是非常必要的。
3、 視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨立性
數(shù)據(jù)的物理獨立性是指用戶的應(yīng)用程序不依賴于數(shù)據(jù)庫的物理結(jié)構(gòu)。數(shù)據(jù)的邏輯獨立性是指當數(shù)據(jù)庫重構(gòu)造時,如增加新的關(guān)系或?qū)υ械年P(guān)系增加新的字段,用戶的應(yīng)用程序不會受影響。層次數(shù)據(jù)庫和網(wǎng)狀數(shù)據(jù)庫一般能較好地支持數(shù)據(jù)的物理獨立性,而對于邏輯獨立性則不能完全的支持。
在關(guān)許數(shù)據(jù)庫中,數(shù)據(jù)庫的重構(gòu)造往往是不可避免的。重構(gòu)數(shù)據(jù)庫最常見的是將一個基本表“垂直”地分成多個基本表。例如:將學(xué)生關(guān)系Student(Sno,Sname,Ssex,Sage,Sdept),
分為SX(Sno,Sname,Sage)和SY(Sno,Ssex,Sdept)兩個關(guān)系。這時原表Student為SX表和SY表自然連接的結(jié)果。如果建立一個視圖Student:
view plain copy
CREATE VIEW Student(Sno,Sname,Ssex,Sage,Sdept)AS SELECT SX.Sno,SX.Sname,SY.Ssex,SX.Sage,SY.Sdept FROM SX,SY WHERE SX.Sno=SY.Sno;
這樣盡管數(shù)據(jù)庫的邏輯結(jié)構(gòu)改變了(變?yōu)镾X和SY兩個表了),但應(yīng)用程序不必修改,因為新建立的視圖定義為用戶原來的關(guān)系,使用戶的外模式保持不變,用戶的應(yīng)用程序通過視圖仍然能夠查找數(shù)據(jù)。
當然,視圖只能在一定程度上提供數(shù)據(jù)的邏輯獨立,比如由于視圖的更新是有條件的,因此應(yīng)用程序中修改數(shù)據(jù)的語句可能仍會因為基本表構(gòu)造的改變而改變。
4、視圖能夠?qū)C密數(shù)據(jù)提供安全保護
有了視圖機制,就可以在設(shè)計數(shù)據(jù)庫應(yīng)用系統(tǒng)時,對不同的用戶定義不同的視圖,使機密數(shù)據(jù)不出現(xiàn)在不應(yīng)該看到這些數(shù)據(jù)的用戶視圖上。這樣視圖機制就自動提供了對機密數(shù)據(jù)的安全保護功能。例如,Student表涉及全校15個院系學(xué)生數(shù)據(jù),可以在其上定義15個視圖,每個視圖只包含一個院系的學(xué)生數(shù)據(jù),并只允許每個院系的主任查詢和修改本原系學(xué)生視圖。
5、備跡雀適當?shù)睦靡晥D可以更清晰地表達查詢
例如經(jīng)常需要執(zhí)行這樣的查詢“對每個學(xué)生找出他獲得更高成績的課程號”??梢韵榷x一個視圖,求出每個同學(xué)獲得的更高成績:
view plain copy
CREATE VIEW VMGRADE
AS
SELECT Sno,MAX(Grade) Mgrade
FROM SC
GROUP BY Sno
然后用如下的查詢語句完成查詢:
view plain 州陸copy
SELECT SC.Sno,Cno FROM SC,VMGRADE WHERE SC.Sno = VMGRADE.Sno AND SC.Grade = VMGRADE.Mgrade;
二、數(shù)據(jù)準備
1、員工表
view plain copy
CREATE TABLE t_employee(
ID INT PRIMARY KEY AUTO_INCREMENT,
NAME CHAR(30) NOT NULL,
SEX CHAR(2) NOT NULL,
AGE INT NOT NULL,
DEPARTMENT CHAR(10) NOT NULL,
SALARY INT NOT NULL,
HOME CHAR(30),
MARRY CHAR(2) NOT NULL DEFAULT ‘否’,
HOBBY CHAR(30)
);
插入數(shù)據(jù):
view plain copy
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’小紅’,’女’,20,’人事部’,’4000′,’廣東’,’否’,’網(wǎng)球’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’明日’,’女’,21,’人事部’,’9000′,’北京’,’否’,’網(wǎng)球’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’天天’,’男’,22,’研發(fā)部’,’8000′,’上?!?’否’,’音樂’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’大大’,’女’,23,’研發(fā)部’,’9000′,’重慶’,’否’,’無’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’王下’,’女’,24,’研發(fā)部’,’9000′,’四川’,’是’,’足球’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’無名’,’男’,25,’銷售部’,’6000′,’福建’,’否’,’游戲’);
INSERT INTO learning.t_employee(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’不知道’,’女’,26,’銷售部’,’5000′,’山西’,’否’,’籃球’);
插入的結(jié)果:
請點擊輸入圖片描述
然后再定義一張員工信息表:
view plain copy
create TABLE t_employee_detail(
ID INT PRIMARY KEY,
POS CHAR(10) NOT NULL,
EXPERENCE CHAR(10) NOT NULL,
CONSTRAINT `FK_ID` FOREIGN KEY(ID) REFERENCES t_employee(ID)
)
插入如下:
view plain copy
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(1,’人事管理’,’工作二年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(2,’人事招聘’,’工作二年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(3,’初級工程師’,’工作一年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(4,’中級工程師’,’工作二年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(5,’高級工程師’,’工作三年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(6,’銷售代表’,’工作二年’);
INSERT INTO t_employee_detail(ID,POS,EXPERENCE) VALUES(7,’銷售員’,’工作一年’);
內(nèi)容:
請點擊輸入圖片描述
三、使用案例
1. 語法
CREATE VIEW view_name AS select_statement CHECK OPTION>
通過該語句可以創(chuàng)建視圖,若給定了,則表示當已具有同名的視圖時,將覆蓋原視圖。select_statement是一個查詢語句,這個查詢語句可從表或其它的視圖中查 詢。視圖屬于數(shù)據(jù)庫,因此需要指定數(shù)據(jù)庫的名稱,若未指定時,表示在當前的數(shù)據(jù)庫創(chuàng)建新視圖。
表和數(shù)據(jù)庫共享數(shù)據(jù)庫中相同的名稱空間,因此,數(shù)據(jù)庫不能包含相同名稱的表和視圖,并且,視圖的列名也不能重復(fù)。
在創(chuàng)建視圖前應(yīng)先看看是否有權(quán)限:
view plain copy
SELECT SELECT_priv,create_view_priv from mysql.user WHERE user=’root’
Y表示有創(chuàng)建的權(quán)限
請點擊輸入圖片描述
2、單表上創(chuàng)建視圖
在員工表是創(chuàng)建視圖
view plain copy
CREATE VIEW V_VIEW1(ID, NAME, SEX, AGE,DEPARTMENT) AS SELECT ID, NAME, SEX, AGE,DEPARTMENT FROM learning.t_employee;
然后是顯示內(nèi)容:
view plain copy
SELECT * FROM V_VIEW1
請點擊輸入圖片描述
3、多表上創(chuàng)建視圖
view plain copy
CREATE VIEW V_VIEW2(ID, NAME, SEX, AGE,DEPARTMENT,POS,EXPERENCE) AS SELECT a.ID, a.NAME, a.SEX, a.AGE,a.DEPARTMENT,b.POS,b.EXPERENCE FROM learning.t_employee a,learning.t_employee_detail b WHERE a.ID=b.ID;
顯示結(jié)果
view plain copy
SELECT * FROM V_VIEW2
請點擊輸入圖片描述
4、查看視圖
(1)DESCRIBE 命令
view plain copy
DESCRIBE V_VIEW2
請點擊輸入圖片描述
(2)SHOW TABLE STATUS
view plain copy
show TABLE status LIKE ‘V_VIEW2’
請點擊輸入圖片描述
(3)SHOW CREATE view命令
view plain copy
show CREATE view V_VIEW2
請點擊輸入圖片描述
5、修改視圖
(1)CREATE OR REPLACE命令
view plain copy
CREATE OR REPLACE VIEW V_VIEW1(ID, NAME, SEX) AS SELECT ID, NAME, SEX FROM learning.t_employee;
請點擊輸入圖片描述
(2) ALTER 命令
view plain copy
ALTER VIEW V_VIEW1(ID, NAME) AS SELECT ID, NAME FROM learning.t_employee;
SELECT * FROM learning.v_view1
請點擊輸入圖片描述
6、更新視圖
在MySQL中,更新視圖是指通過視圖來插入(INSERT)、更新(UPDATE)和刪除(DELETE)表中的數(shù)據(jù)。因為視圖是一個虛擬表,其中沒有數(shù)據(jù),所以通過視圖更新時,都是轉(zhuǎn)換到基本表來更新。
更新視圖時,只能更新權(quán)限范圍內(nèi)的數(shù)據(jù)。超出了范圍,就不能更新。
更新前:
請點擊輸入圖片描述
更新后:
view plain copy
UPDATE V_VIEW2 SET POS=’高級工程師’ WHERE NAME=’天天’
請點擊輸入圖片描述
對應(yīng) 的真實表上的數(shù)據(jù)也發(fā)生改變 了
view plain copy
SELECT * FROM learning.t_employee_detail WHERE t_employee_detail.ID=3
請點擊輸入圖片描述
不可更新的視圖:
某些視圖是可更新的。也就是說,可以在諸如UPDATE、DELETE或INSERT等語句中使用它們,以更新基表的內(nèi)容。對于可更新的視圖,在視圖中的行和基表中的行之間必須具有一對一的關(guān)系。還有一些特定的其他結(jié)構(gòu),這類結(jié)構(gòu)會使得視圖不可更新。更具體地講,如果視圖包含下述結(jié)構(gòu)中的任何一種,那么它就是不可更新的:
· 聚合函數(shù)(SUM(), MIN(), MAX(), COUNT()等)。
· DISTINCT
· GROUP BY
· HAVING
· UNION或UNION ALL
· 位于選擇列表中的子查詢
· Join
· FROM子句中的不可更新視圖
· WHERE子句中的子查詢,引用FROM子句中的表。
· 僅引用文字值(在該情況下,沒有要更新的基本表)。
· ALGORITHM = TEMPTABLE(使用臨時表總會使視圖成為不可更新的)。
注意
視圖中雖然可以更新數(shù)據(jù),但是有很多的限制。一般情況下,更好將視圖作為查詢數(shù)據(jù)的虛擬表,而不要通過視圖更新數(shù)據(jù)。因為,使用視圖更新數(shù)據(jù)時,如果沒有全面考慮在視圖中更新數(shù)據(jù)的限制,就可能會造成數(shù)據(jù)更新失敗。
CASCADED和LOCAL能不能決定視圖是否能更新?
WITH CHECK OPTION能不能決定視圖是否能更新?這兩個參數(shù)的基本定義如下:
LOCAL參數(shù)表示更新視圖時只要滿足該視圖本身定義的條件即可。
CASCADED參數(shù)表示更新視圖時需要滿足所有相關(guān)視圖和表的條件。沒有指明時,該參數(shù)為默認值。
With check option的用法:
(with check option對于沒有where條件的視圖不起作用的)
view plain copy
CREATE VIEW V_VIEW3(ID, NAME,SEX,AGE,DEPARTMENT,SALARY, HOME, MARRY, HOBBY) AS SELECT ID, NAME, SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY FROM learning.t_employee WHERE DEPARTMENT=’人事部’ WITH LOCAL CHECK OPTION;
表示只限定插入部門為人事部的人。
請點擊輸入圖片描述
然后插入一條:
view plain copy
INSERT INTO learning.V_VIEW3(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’會會會會’,’女’,20,’人事部’,’4500′,’廣東’,’否’,’網(wǎng)球’);
看下結(jié)果:
view plain copy
SELECT * FROM learning.V_VIEW3
請點擊輸入圖片描述
同時看真實表中的數(shù)據(jù):
請點擊輸入圖片描述
再來插入一條:
view plain copy
INSERT INTO learning.V_VIEW3(ID, NAME, SEX, AGE,DEPARTMENT, SALARY, HOME, MARRY, HOBBY) VALUES(NULL,’qqqqvasvas’,’女’,20,’研發(fā)部’,’4500′,’上?!?’否’,’網(wǎng)球’);
請點擊輸入圖片描述
結(jié)果顯示插入失敗
對于with check option用法,總結(jié)如下:
通過有with check option選項的視圖操作基表(只是面對單表,對連接多表的視圖正在尋找答案),有以下結(jié)論: 插入后的數(shù)據(jù),通過視圖能夠查詢出來就符合WITH CHECK OPTION 否則就不符合;
首先視圖只操作它可以查詢出來的數(shù)據(jù),對于它查詢不出的數(shù)據(jù),即使基表有,也不可以通過視圖來操作。
1.對于update,有with check option,要保證update后,數(shù)據(jù)要被視圖查詢出來
2.對于delete,有無with check option都一樣
4.對于insert,有with check option,要保證insert后,數(shù)據(jù)要被視圖查詢出來
對于沒有where 子句的視圖,使用with check option是多余的
7、刪除視圖
view plain copy
DROP VIEW IF EXISTS 視圖名
數(shù)據(jù)庫視圖的命名的介紹就聊到這里吧,感謝你花時間閱讀本站內(nèi)容,更多關(guān)于數(shù)據(jù)庫視圖的命名,數(shù)據(jù)庫視圖命名的幾點建議,數(shù)據(jù)庫如何創(chuàng)建視圖的信息別忘了在本站進行查找喔。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機、虛擬主機、域名注冊、VPS主機、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
當前名稱:數(shù)據(jù)庫視圖命名的幾點建議(數(shù)據(jù)庫視圖的命名)
分享網(wǎng)址:http://fisionsoft.com.cn/article/dhoeejs.html


咨詢
建站咨詢
