數(shù)據(jù)庫視圖創(chuàng)建是Oracle認(rèn)證考試的重要內(nèi)容,為了幫助準(zhǔn)備參加Oracle認(rèn)證考試的考生,更好的把握考試重點(diǎn)內(nèi)容,唯學(xué)小編特總結(jié)整理了Oracle認(rèn)證考試數(shù)據(jù)庫視圖創(chuàng)建的五部方法,具體內(nèi)容如下,以供考生參考學(xué)習(xí):
第一步:先考慮Select語句的編寫。我們知道,視圖其實(shí)就是一個(gè)Select語句的集合。所以,我們建立視圖的第一步,就是考慮這個(gè)Select語句該如何編寫。這個(gè)Select語句編寫的是否合理、執(zhí)行效率的高低直接影響著這個(gè)視圖的性能。另外,在Select語句中,可能還會(huì)有格式的控制、內(nèi)容的編排等等。如在Select語句中,可以把一些字段合并成一個(gè)字段;也可以把相關(guān)的內(nèi)容進(jìn)行倒置等等。這些功能都是Select語句完成的。所以可以這么說,Select語句的編寫是視圖建立的基礎(chǔ)。
第二步:對(duì)這個(gè)Select語句進(jìn)行測(cè)試。當(dāng)我們編寫好Select語句之后,就需要在數(shù)據(jù)庫中執(zhí)行這條語句,看其能否查詢到我們想要的值。在對(duì)Select語句進(jìn)行測(cè)試的時(shí)候,需要注意一個(gè)問題,有時(shí)候Select查詢語句可以查到準(zhǔn)確的數(shù)據(jù),但是在以這條語句建立視圖的時(shí)候,可能就會(huì)通不過。如在一些表之間的連接查詢的時(shí)候,如果兩個(gè)表中有個(gè)字段名相同,是可以的。因?yàn)樗麄兂俗侄蚊种�,還有表名一起來定義這個(gè)字段。如A.name與B.name。這是不算重名的。但是,若在建立視圖的時(shí)候,這就會(huì)被認(rèn)為是重復(fù)的列明,需要對(duì)其中的一個(gè)列名進(jìn)行重定義。這一點(diǎn)在數(shù)據(jù)庫視圖建立的時(shí)候,要特別的注意。
第三步:考慮查詢結(jié)果的準(zhǔn)確性。通過查詢語句把我們想要的結(jié)果查詢出來后,我們就需要看看這個(gè)結(jié)果是否滿足我們的需要。在這個(gè)過程中,我們主要注意兩點(diǎn)。一是形式字段是否齊全。在一些應(yīng)用系統(tǒng)中,若數(shù)據(jù)庫的視圖要能夠被前臺(tái)的應(yīng)用程序調(diào)用的話,則必須包含一些形式字段。如筆者以前在設(shè)計(jì)一個(gè)ERP系統(tǒng)的時(shí)候,若前臺(tái)系統(tǒng)要調(diào)用數(shù)據(jù)庫中的視圖的時(shí)候,必須包含記錄更新時(shí)間、更新者、記錄創(chuàng)建時(shí)間、創(chuàng)建者等相關(guān)信息。若缺乏這些信息的話,則前臺(tái)調(diào)用這張視圖的時(shí)候,就會(huì)出現(xiàn)錯(cuò)誤。故在考慮查詢結(jié)果準(zhǔn)確性的問題的時(shí)候,就要考慮到前臺(tái)應(yīng)用程序的需要,看看這些形式字段是否齊全。二是實(shí)體內(nèi)容的完整性。我們到底需要顯示表中的哪些字段呢,這個(gè)我們?cè)谶@里要確認(rèn)清楚。若顯示內(nèi)容太多的話,則會(huì)影響視圖的執(zhí)行效率,而且也會(huì)降低視圖的安全性作用;但是,若字段內(nèi)容顯示不足的話,則以后要添加字段的話,會(huì)比較麻煩,有一定的工作量。所以在這個(gè)檢驗(yàn)的時(shí)候,需要根據(jù)視圖的實(shí)際功用,確定視圖需要顯示的內(nèi)容。
第四步:視圖的修飾。有時(shí)候,為了閱讀的方便,我們需要對(duì)查詢結(jié)果進(jìn)行一些修飾。如現(xiàn)在有兩張表,一張是員工基本信息表,這表中有員工姓名、員工職位編號(hào)等等;另一張表是職位基本信息表,在這表中有職位編號(hào)、職位名稱。我們希望在視圖中能夠如下顯示:“職位:?jiǎn)T工名字”,如數(shù)據(jù)庫工程師:Victor。也就是說,把兩個(gè)字段合并起來,并且在中間加入一個(gè)冒號(hào)。這些格式性的內(nèi)容都是在查詢的時(shí)候?qū)崿F(xiàn)的。所以,我們確認(rèn)查詢的結(jié)果沒有錯(cuò)誤之后,接下來就要確認(rèn)格式問題。若能夠在視圖中規(guī)范這些格式問題,則前臺(tái)的程序設(shè)計(jì)就會(huì)相對(duì)來說比較簡(jiǎn)單。
第五步:建立視圖。等到上面四步都確認(rèn)無誤后,我們就要根據(jù)上面的查詢語句來建立視圖了。不過在這一步過程中,也有一些問題需要注意。一是視圖名字的命名規(guī)格。我們除了遵循數(shù)據(jù)庫的強(qiáng)制命名格式之外,如不能以數(shù)字開頭等等,還需要遵循一些軟規(guī)則。如視圖最好能夠以V開頭,跟基礎(chǔ)表進(jìn)行隔開;另外在視圖命名中,能夠根據(jù)應(yīng)用模塊的不同,來進(jìn)行分類,并體現(xiàn)在視圖的名字中。這對(duì)于我們后續(xù)視圖的查找都具有非常現(xiàn)實(shí)的意義。二是雖然可以在視圖中直接更新基礎(chǔ)表,不過,為了安全與數(shù)據(jù)統(tǒng)一的考慮,我們這些過來人一般都不建議通過視圖來直接更新基礎(chǔ)表中的數(shù)據(jù)。雖然數(shù)據(jù)庫提供了類似的功能。若要更改相關(guān)數(shù)據(jù)的話,則直接去更改基礎(chǔ)表的內(nèi)容為好。在建立視圖的時(shí)候,默認(rèn)情況下是不能夠通過視圖直接更新基礎(chǔ)表。
唯學(xué)網(wǎng)是國內(nèi)最具價(jià)值的教育培訓(xùn)與互動(dòng)學(xué)習(xí)平臺(tái),致力于為考生提供第一手的教育資訊與院校教學(xué)服務(wù),因此考生如若獲知oracle認(rèn)證考試報(bào)名時(shí)間、oracle認(rèn)證考試成績(jī)查詢、oracle認(rèn)證考試試題或其他關(guān)于更多IT認(rèn)證考試培訓(xùn)的相關(guān)信息,請(qǐng)密切關(guān)注唯學(xué)網(wǎng)。
|
|
||
|
|