2
3
4
5
6
7
8
9
10
第二章 關(guān)系模型
19. 超鍵、主鍵、候選鍵的定義:
超鍵(super key):在關(guān)系中能唯一標(biāo)識元組的屬性集稱為關(guān)系模式的超鍵。
候選鍵(candidate key):不含有多余屬性的超鍵稱為候選鍵。(候選鍵可以有多個)
主鍵(primary key):用戶選作元組標(biāo)識的一個候選鍵稱為主鍵。(主鍵是候選鍵中一個)
20. 關(guān)系模式、關(guān)系子模式和存儲模式:
關(guān)系模型基本上遵循數(shù)據(jù)庫的三級體系結(jié)構(gòu)。概念模式是關(guān)系模式的集合,外模式是關(guān)系子模式的集合,內(nèi)模式是存儲模式的集合。
(1) 關(guān)系模式:關(guān)系模式實際上是記錄類型。它的定義包括:模式名,屬性名,值域名以及模式的主鍵。
(2) 關(guān)系子模式:是用戶所用到的那部分?jǐn)?shù)據(jù)的描述。除了指出用戶的數(shù)據(jù)外,還應(yīng)指出模式與子模式之間的對應(yīng)性。
(3) 存儲模式:關(guān)系存儲時的基本組織方式是文件,元組是文件中的記錄。存儲一個關(guān)系可以用散列方法或索引方法實現(xiàn)。如果關(guān)系中元組數(shù)目較少,也可以用堆文件方式實現(xiàn)。
21. 關(guān)系模型的三類完整性規(guī)則:
(1) 實體完整性規(guī)則:這條規(guī)則要求關(guān)系中元組在組成主鍵的屬性上不能有空值。
(2) 參照完整性規(guī)則:這條規(guī)則要求“不引用不存在的實體”。
(3) 用戶定義的完整性規(guī)則:它反映某一具體應(yīng)用涉及的數(shù)據(jù)必須滿足的語義要求。
22. 參照完整性規(guī)則的形式定義:
如果屬性集K是關(guān)系模式R1的主鍵,K也是關(guān)系模式R2的外鍵,那么在R2的關(guān)系中,K的取值只允許兩種可能,或者為空,或者等于R1關(guān)系中某個主鍵值。
此規(guī)則使用時還要注意三點:
(1) 外鍵和相應(yīng)的主鍵可以不同名,只要定義在相同值域上即可。
(2) R1和R2也可以是同一個關(guān)系模式,表示了屬性之間的聯(lián)系。
(3) 外鍵值是否允許空,應(yīng)視具體問題而定。
上述形式定義中,關(guān)系模式R1稱為“參照關(guān)系”模式,R2稱為“依賴關(guān)系”模式。
23. 關(guān)系模型的形式定義:
24. 關(guān)系查詢語言根據(jù)其理論基礎(chǔ)的不同分為哪兩類:
關(guān)系代數(shù)語言:查詢操作是以集合操作為基礎(chǔ)運(yùn)算的DML語言。(非過程性弱)
關(guān)系演算語言:查詢操作是以謂詞演算為基礎(chǔ)運(yùn)算的DML語言。(非過程性強(qiáng))
25. 關(guān)系代數(shù)中的操作有哪些?
關(guān)系代數(shù)中的操作可分為兩類:
傳統(tǒng)的集合操作:并、差、交、笛卡爾積
擴(kuò)充的集合操作:對關(guān)系進(jìn)行垂直分割(投影)、水平分割(選擇),關(guān)系的結(jié)合(聯(lián)接、自然聯(lián)接),笛卡爾積的逆運(yùn)算(除法)等。
其中五個基本操作為:并、差、笛卡爾積、投影、選擇。
四個常用組合操作為:交、連接、自然連接、除法
兩種擴(kuò)充的關(guān)系代數(shù)操作為:外連接和外部并
26. 關(guān)系演算有哪兩種:
關(guān)系演算可分為元組關(guān)系演算和域關(guān)系演算。前者以元組為變量,后者以屬性(域)為變量。
27. 什么是約束變量、自由變量:
如果元組變量未使用存在量詞 或全稱量詞 符號定義,那么稱為自由元組變量,否則稱為約束元組變量。
約束變量類似于程序設(shè)計語言過程內(nèi)部定義的局部變量,自由變量類似于過程外部定義的外部變量或全局變量。
28. 什么是安全運(yùn)算:
在數(shù)據(jù)庫技術(shù)中,不產(chǎn)生無限關(guān)系和無窮驗證的運(yùn)算稱為安全運(yùn)算,相應(yīng)的表達(dá)式稱為安全表達(dá)式,所采取的措施稱為安全約束。
在關(guān)系演算中約定,運(yùn)算只對表達(dá)式中公式在涉及到的關(guān)系的值范圍內(nèi)操作。這樣就不會產(chǎn)生無限關(guān)系和無窮驗證問題,關(guān)系演算是安全的。
29. 為什么要對關(guān)系代數(shù)表達(dá)式進(jìn)行優(yōu)化:
查詢優(yōu)化是由DBMS對關(guān)系代數(shù)表達(dá)式進(jìn)行優(yōu)化組合,以提高DBMS的系統(tǒng)效率。要對關(guān)系代數(shù)進(jìn)行優(yōu)化的原因是:由于關(guān)系代數(shù)表達(dá)式是由關(guān)系代數(shù)操作組合而成。在關(guān)系代數(shù)操作中,執(zhí)行笛卡爾積和聯(lián)接運(yùn)算最費(fèi)時間,并且在執(zhí)行過程中將產(chǎn)生大量的中間結(jié)果,以使系統(tǒng)執(zhí)行效率較低。在執(zhí)行前,由DBMS查詢處理子系統(tǒng)先對關(guān)系代數(shù)表達(dá)式進(jìn)行優(yōu)化,盡可能早地執(zhí)行選擇和投影操作,以得到較小的中間關(guān)系,減少運(yùn)算量和讀外存塊的次數(shù),節(jié)省系統(tǒng)的執(zhí)行時間,提高執(zhí)行效率。
30. 簡述查詢優(yōu)化的優(yōu)化策略:
(1) 在關(guān)系代數(shù)表達(dá)式中盡可能早地執(zhí)行選擇操作。
(2) 把笛卡爾積和隨后的選擇操作合并成F聯(lián)接運(yùn)算。
(3) 同時計算一連串的選擇和投影操作,以免分開運(yùn)算造成多次掃描文件,從而能節(jié)省操作時間。
(4) 如果在一個表達(dá)式中多次出現(xiàn)某個子表達(dá)式,應(yīng)該將該子表達(dá)式預(yù)先計算出結(jié)果保存起來。以免重復(fù)計算。
(5) 適當(dāng)?shù)膶﹃P(guān)系文件進(jìn)行預(yù)處理。
(6) 在計算表達(dá)式之前應(yīng)先估計一下怎么計算合算。
更多軟考資料請訪問:考試吧軟件水平考試欄目
希望與更多網(wǎng)友交流,請進(jìn)入考試吧軟件水平考試論壇
上一頁 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] 下一頁
轉(zhuǎn)帖于:軟件水平考試_考試吧- 推薦給朋友
- 收藏此頁
·教你調(diào)整Oracle數(shù)據(jù)庫服務(wù)器的性能 (2007-1-25 16:15:36)
·SQL SERVER優(yōu)化建議 (2007-1-25 16:13:03)
·Oracle SQL語句優(yōu)化技術(shù)分析 (2007-1-25 16:09:20)
·用智能優(yōu)化限制提高Oracle數(shù)據(jù)庫性能 (2007-1-25 16:08:34)
·Excel數(shù)據(jù)透視表使用方法精要12點(中文對照) (2007-1-25 16:06:31)
如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。