第二章 關(guān)系數(shù)據(jù)庫
1 .試述關(guān)系模型的三個組成部分。
答:關(guān)系模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束三部分組成。
?
2 .試述關(guān)系數(shù)據(jù)語言的特點和分類。
答:關(guān)系數(shù)據(jù)語言可以分為三類:
關(guān)系代數(shù)語言。
關(guān)系演算語言:元組關(guān)系演算語言和域關(guān)系演算語言。
SQL:具有關(guān)系代數(shù)和關(guān)系演算雙重特點的語言。
這些關(guān)系數(shù)據(jù)語言的共同特點是,語言具有完備的表達能力,是非過程化的集合操作語言,功能強,能夠嵌入高級語言中使用。
3 (略)
4 .
5 . 述關(guān)系模型的完整性規(guī)則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?
答:實體完整性規(guī)則是指若屬性A是基本關(guān)系R的主屬性,則屬性A不能取空值。
若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(yīng)(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個元組在F上的值必須為:或者取空值(F的每個屬性值均為空值);或者等于S中某個元組的主碼值。即屬性F本身不是主屬性,則可以取空值,否則不能取空值。
6.設(shè)有一個SPJ數(shù)據(jù)庫,包括S,P,J,SPJ四個關(guān)系模式:
1)求供應(yīng)工程J1零件的供應(yīng)商號碼SNO:
πSno(σJno=‘J1’(SPJ))
2)求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO:
πSno(σJno=‘J1’∧Pno=‘P1‘(SPJ))
3)求供應(yīng)工程J1零件為紅色的供應(yīng)商號碼SNO:
πSno(πSno,,Pno(σJno=‘J1‘?(SPJ))∞πPno(σCOLOR=’紅‘?(P)))
4)求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO:
πJno(SPJ)- πJNO(σcity=‘天津’∧Color=‘紅‘?(S∞SPJ∞P)
5)求至少用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO:
πJno,Pno(SPJ)÷ πPno(σSno=‘S1‘?(SPJ))
7. 試述等值連接與自然連接的區(qū)別和聯(lián)系。
答:連接運算符是“=”的連接運算稱為等值連接。它是從關(guān)系R與S的廣義笛卡爾積中選取A,B屬性值相等的那些元組
自然連接是一種特殊的等值連接,它要求兩個關(guān)系中進行比較的分量必須是相同的屬性組,并且在結(jié)果中把重復(fù)的屬性列去掉。
8.關(guān)系代數(shù)的基本運算有哪些???如何用這些基本運算來表示其他運算??
答:并、差、笛卡爾積、投影和選擇5種運算為基本的運算。其他3種運算,即交、連接和除,均可以用這5種基本運算來表達。