《數據庫原理》課后習題以及期末復習試題_第1頁
《數據庫原理》課后習題以及期末復習試題_第2頁
《數據庫原理》課后習題以及期末復習試題_第3頁
《數據庫原理》課后習題以及期末復習試題_第4頁
《數據庫原理》課后習題以及期末復習試題_第5頁
已閱讀5頁,還剩40頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第一章緒論

一、選擇題

1.DBS是采用了數據庫技術的計算機系統,DBS是一個集合體,包含數據庫、計算機硬件、軟件和(C)。

A.系統分析員B.程序員C.數據庫管理員D.操作員

2.數據庫(DB),數據庫系統(DBS)和數據庫管理系統(DBMS)之間的關系是(A)。

A.DBS包括DB和DBMSB.DBMS包括DB和DBS

C.DB包括DBS和DBMSD.DBS就是DB,也就是DBMS

3.下面列出的數據庫管理技術發展的三個階段中,沒有專門的軟件對數據進行管理的是(D)。

I.人工管理階段II.文件系統階段III.數據庫階段

A.I和IIB.只有IIC.II和川D.只有I

4.下列四項中,不屬于數據庫系統特點的是()。

A.數據共享B.數據完整性C.數據冗余度高D.數據獨立性高

5.數據庫系統的數據獨立性體現在()。

A.不會因為數據的變化而影響到應用程序

B.不會因為系統數據存儲結構與數據邏輯結構的變化而影響應用程序

C.不會因為存儲策略的變化而影響存儲結構

D.不會因為某些存儲結構的變化而影響其他的存儲結構

6.描述數據庫全體數據的全局邏輯結構和特性的是

A.模式B.內模式C.外模式D.用戶模式

7.要保證數據庫的數據獨立性,需要修改的是()。

A.模式與外模式B.模式與內模式C.三層之間的兩種映射D.三層模式

8.要保證數據庫的邏輯數據獨立性,需要修改的是()。

A.模式與外模式的映射B.模式與內模式之間的映射C.模式D.三層模式

9.用戶或應用程序看到的那部分局部邏輯結構和特征的描述是(),它是模式的邏輯子集。

A.模式B.物理模式C.子模式D.內模式

10.下述()不是DBA數據庫管理員的職責。

A.完整性約束說明B.定義數據庫模式C.數據庫安全D.數據庫管理系統設計

二、簡答題

1?試述數據、數據庫、數據庫系統、數據庫管理系統的概念。

答:數據:描述事物的符號記錄

數據庫:長期儲存在計算機內、有組織的、可共享的數據集合。

數據庫管理系統:位于用戶與操作系統之間的一層數據管理軟件。

數據庫系統:指在計算機系統中引入數據庫后系統構成,一般由數據庫、數據管理系統(已經開發工

具)、應用系統、數據庫管理員和用戶構成。

2.使用數據庫系統有什么好處?

答:查詢迅速、準確,而且可以節約大量紙面文件;數據結構化,并由DBMS同樣管理;數據冗余度??;

具有較高的數據獨立性;共享性好2;DBMS提供了數據的控制功能。

3.試述文件系統與數據庫系統的區別和聯系。

答:文件系統面向某一應用程序,共享性差,冗余度大,數據獨立性差,記錄內有結構,整體無結構,

由應用程序自己控制。數據庫系統面向現實世界,共享性搞,冗余度小,具有較高的物理獨立性和一定的

邏輯獨立性,整體結構化,用數據模型描述,由數據庫管理系統提供數據的安全性、完整性、并發控制盒

恢復能力。

文件系統與數據庫系統的聯系是:文件系統與數據庫系統都是計算機系統中管理數據的軟件,解析文件

系統是操作系統的重要組成部分,而DBMS是獨立于操作體統的軟件。但是DBMS是在操作系統的基礎上

實現的;數據庫中數據的組織和存儲是通過操作體統中的文件系統來實現的。

4.舉出適合用文件系統而不是數據庫系統的例子;再舉出適合用數據庫系統的應用例子。

答:(1)適用于文件系統而不是數據庫系統的應用例子:數據的備份、軟件或應用程序使用過程中那個的

臨時數據存儲一般使用文件比較合適。早期功能比較簡單、比較固定的應用系統也適用文件系統。

(2)適用于數據庫系統而非文件的應用例子:目前,幾乎所有企業或部門的信息系統都以數據庫系統

為基礎,都使用數據庫。例如,一個工廠的管理信息系統,學校的學生管理系統,人事管理系統,圖書館

的圖書管理系統,等等,都適用數據庫系統。

5.試述數據庫系統的特點。

答(1)數據結構化(2)數據的共享性好,冗余度低(3)數據獨立性高(4)數據由DBMS統一管理和控

6.數據庫管理系統的主要功能有哪些?

答:(1)數據庫定義功能(2)數據存取功能(3)數據庫運行管理(4)數據庫的建立和維護功能

7.試述數據模型的概念、數據模型的作用和數據模型的三個要素。

答:(1)數據結構:是所研究的對象類型的集合,是對系統靜態特性的描述。

(2)數據操作:是指對數據庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有

關操作規則,是對系統動態特性的描述。

(3)數據的約束條件:是一組完整性規則的集合。完整性規則是給定的數據模型中數據及其聯系所具

有的制約和依存規則,用以限定符合數據模型的數據庫狀態已經狀態的變化,以保證數據的正確、有效、

相容。

8.試述概念模型的作用。

答:概念模型實際上是現實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是顯示世

界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具,也是數據庫設計人員和用戶

之間進行交流的語言。

9.定義并解釋概念模型中以下術語:

實體,實體型,實體集,屬性,碼,實體聯系圖(E-R圖)

答:實體:客觀存在并可以相互區分的事物叫實體。

實體型:具有相同屬性的實體具有相同的特征和性質,好用實體名及其屬性名集合來抽象和刻回同類實

體,稱為實體型。實體集:同型實體的集合稱為實體集。

屬性:實體所具有的某一特性,一個實體可由若干個屬性來刻畫。

碼:唯一標識實體的屬性集稱為碼。

實體聯系圖(E-R圖):提供了表示實體型、屬性和聯系的方法。

?實體型:用矩形表示,矩形框內寫明實體名;?屬性:用橢圓形表示,并用無向邊將其與相應的實體

連接起來;?聯系:用菱形表示,菱形框內寫明聯系名,并用無向邊分別于有關實體連接起來,同時在無向

邊旁上聯系的類型(LLLn或m:n)。

10.試給出三個實際部門的E-R圖,要求實體型之間具有一對一,一對多,多對多各種不同的聯系。

第二章關系數據庫

一、選擇題

1.下面的選項不是關系數據庫基本特征的是(A)。

A.不同的列應有不同的數據類型B.不同的列應有不同的列名

C.與行的次序無關D.與列的次序無關

2.一個關系只有一個(D)。

A.候選碼B.外碼C.超碼D.主碼

3.關系模型中,一個碼是(C)?

A.可以山多個任意屬性組成

B.至多由一個屬性組成

C.可有多個或者一個其值能夠唯一表示該關系模式中任何元組的屬性組成

D.以上都不是

4.現有如下關系:

患者(患者編號,患者姓名,性別,出生日起,所在單位)

醫療(患者編號,患者姓名,醫生編號,醫生姓名,診斷II期,診斷結果)

其中,醫療關系中的外碼是(A)。

A.患者編號B.患者姓名

C.患者編號和患者姓名D.醫生編號和患者編號

5.現有一個關系:借閱(書號,書名,庫存數,讀者號,借期,還期),假如同一本書允許一個讀者多次借

閱,但不能同時對?種書借多本,則該關系模式的外碼是(D)。

A.書號B.讀者號C.書號+讀者號D.書號+讀者號+借期

6.關系模型中實現實體間N:M聯系是通過增加一個(A)。

A.關系實現B.屬性實現C.關系或一個屬性實現D.關系和一個屬性實現

7.關系代數運算是以(C)為基礎的運算。

A.關系運算B.謂詞演算C.集合運算D.代數運算

8.關系數據庫管理系統應能實現的專門關系運算包括(B)。

A.排序、索引、統計B.選擇、投影、連接

C.關聯、更新、排序D.顯示、打印、制表

9.五種基本關系代數運算是(A)。

A.U—XoJiB.U—oJtC.UDXoitD.UAoJt

10.關系代數表達式的優化策略中,首先要做的是(B)。

A.對文件進行預處理B.盡早執行選擇運算

C.執行笛卡爾積運算D.投影運算

11.關系數據庫中的投影操作是指從關系中(B)。

A.抽出特定記錄B.抽出特定字段

C.建立相應的影像D.建立相應的圖形

12.從一個數據庫文件中取出滿足某個條件的所有記錄形成一個新的數據庫文件的操作是(C)操作。

A.投影B.聯接C.選擇D.復制

13.關系代數中的聯接操作是由(B)操作組合而成。

A.選擇和投影B.選擇和笛卡爾積

C.投影、選擇、笛卡爾積D.投影和笛卡爾積

14.自然聯接是構成新關系的有效方法。一般情況下,當對關系R和S是用自然聯接時,要求R和S含有一

個或者多個共有的(C)o

A.記錄B.行C.屬性D.元組

15.假設有關系R和S,在下列的關系運算中,(D)運算不要求:“R和S具有相同的元數,且它們的對應屬

性的數據類型也相同”。

A.RASB.RUSC.R-SD.RXS

16.假設有關系R和S,關系代數表達式R—(R-S)表示的是(A)。

A.RPISB.RUSC.R-SD.RXS

17.下面列出的關系代數表達是中,那些式子能夠成立(C)。

i.ofl(of2(E))=oflAf2(E)ii.E1°°E2=E20°E1

iii.(E10°E2)?>E3=El°°(E2°°E3)iv.ofl(of2(E))=。f2(ofl(E))

A.全部B.ii和iiiC.沒有D.i和iv

18.下面四個關系表達式是等價的,是判別它們的執行效率(A)。

El=nA(oB=CAD=E((RXS))E2=nA(。B=C(RXoD=E'(S))

E3=JiA(R8B=C。D=E'⑸)E4=JtA(oD=Ez(R0°B=CS))

A.E3最快B.E2最快C.E4最快D.E1最快

19.有關系SC(S」D,C_ID,AGE,SCORE),查找年齡大于22歲的學生的學號和分數,正確的關系代數表達

式是(D).

i.nSJD,SCORE(。age>22(SC))

ii.aage>22(nS_ID,SCORE(SC))

iii.nSJD,SCORE(oage>22(頁S_ID,SCORE,AGE(SC)))

A.i和iiB.只有ii正確C.只有i正確D.i和iii正確

二、簡答題

1.試述關系模型的三個組成部分。

答:關系模型由關系數據結構、關系操作集合和關系完整性約束三部分組成。

2.試述關系數據語言的特點和分類。

答:關系數據語言可以分為三類:關系代數語言。

關系演算語言:元祖關系演算語言和域關系演算語言。

SQL:具有關系代數和關系演算雙重特點的語言。

這些關系數據語言的共同特點是,語言具有完備的表達能力,是非過程化的集合操作語言,功能強,能夠

嵌入高級語言中使用。

3.設有一個SPJ數據庫,包括S,P,J,SPJ四個關系模式:

S(SNO,SNAME,STATUS,CITY);

P(PNO,PNAME,COLOR,W日GHT);

J(JNO,JNAME,CITY);

SPJ(SNO,PNO,JNO,QTY);

供應商表S由供應商代碼(SNO)、供應商姓名(SNAME)、供應商狀態(STATUS)、供應商所在城市(CITY)

組成;零件表P由零件代碼(PN。)、零件名(PNAME)、顏色(COLOR)、重量(WEIGHT)組成;工程項目

表J由工程項目代碼CINO)、工程項目名(JNAME)、工程項目所在城市(CITY)組成;供應情況表SPJ由供

應商代碼(SNO)、零件代碼(PN。)、工程項目代碼QN。)、供應數量(QTY)組成,表示某供應商供應某

種零件給某工程項目的數量為QTY。

試用關系代數完成如下查詢:

(1)求供應工程J1零件的供應商號碼SNO;nSNO(oSNO='Jl'(SPJ))

(2)求供應工程J1零件Pl的供應商號碼SNO;nSNO(oSNO='JI'APNO='Pl'(SPJ))

(3)求供應工程JI零件為紅色的供應商號碼SNO;nSNO(aSNO='JI'(。COLOR='紅色'(P8SPJ))

(4)求沒有使用天津供應商生產的紅色零件的工程號JNO;

nJNO(SPJ)-JtJNO(oCITY='天津'ACOLOR='紅色'(S8$PJ8p))

(5)求至少用了供應商SI所供應的全部零件的工程號JNO。

nJNO,PNO(SPJ)4-itPNO(oSNO='Si'(SPJ))

4.定義并理解下列術語,說明它們之間的聯系與區別:

(1)域,笛卡爾積,關系,元組,屬性(2)主碼,候選碼,外碼(3)關系模式,關系,關系數據庫

答:(1)域:-組具有相同數據類型的值的集合。

笛卡爾積:建立在一組域DI,D2,.......Dn的笛卡爾積為:

DIxD2x...xDn={(dl,d2,...,dn)|diGDi,I=1,...,n}

關系:笛卡爾積DIxD2x...xDn的有限子集;

元組:笛卡爾積的每個元素(dl,d2,—,dn)稱作一個n-元組(n-tuple),簡稱元組(Tuple);

屬性:關系的每一列對應一個域,給每列起一個名字,稱為屬性。

(2)主碼:若關系中的某一屬性組的值能夠唯一地標識一個元組,則稱為該屬性組為候選碼(Candidate

Key),主碼是從候選碼中選定的?個碼(PrimaryKey);

外部碼:F是關系R的一組屬性,但不是關系R的碼,如果F與關系S的主碼K相對應,則稱F是

關系R的外部碼(ForeignKey).

⑶關系模式:是對關系的型的描述,說明關系由哪些屬性組成,這些屬性來自于哪些域,以及屬性與

域的映像。形式化表示為:R(U,D,dom,F),簡記為:R(U);

關系:關系可以理解為關系模式在某一時刻的狀態或內容。

關系數據庫:關系數據庫即實體關系和實體之間聯系的關系的集合。

5.試述關系模型的完整性規則。在參照完整性中,為什么外碼屬性的值有時也可以為空?什么情況下才可

以為空?

答:關系模型中有三類完整性約束:實體完整性、參照完整性和用戶定義的完整性。

關系的實體完整性規則為:若屬性A是基本關系R的主屬性,則屬性A的值不能為空值。關系的參照完整

性規則為:若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的主碼Ks相對應(基本關系R和S

不一定是不同的關系),則對干R中每個元組在F上的值必須取空值(F的每個屬性值均為空值)或者等于S

中某個元組的主碼值。用戶定義的完整性就是針對某一具體關系數據庫的約束條件,它反映某一具體應用

所涉及的數據必須滿足的語義要求。

由于外碼在被參考關系A中,是非主屬性,其值為空,不影響關系的實體完整性。當外碼值不清楚或不確

定時,可以設為空值,此時參照表中沒有對應的記錄與之匹配。

6.試述等值連接與自然連接的區別和聯系。

答:連接運算符是“=”的連接運算稱為等值連接。它是從關系R與S的廣義笛卡爾積中選取A,B屬性值

相等的那些元組。

自然連接時一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且在結果中

把重復的屬性列去掉。

7.關系代數的基本運算有哪些?

答:并(U)、差(-)、笛卡爾積(X)、投影(n)、選擇(。)5種運算為基本的運算。其他3中國運算,

即交、連接和除,均可以使用這5種基本運算來表達。

8.試用關系代數的基本運算來表示其他運算。

RAS=R-(R-S)R8s=oA0B(RXS)R+S=nx(nx(R)XS-R)

第三章SQL語言

一、選擇題

1.SQL語言是(B)的語言,容易學習。A.過程化B.非過程化C.格式化D.導航式

2.SQL語言的數據操縱語句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的

語句是(A),A.SELECTB.INSERTC.UPDATED.DELETE

3.在視圖上不能完成的操作是(C)?

A.更新視圖B.查詢

C.在視圖上定義新的表D.在視圖上定義新的視圖

4.SQL語言集數據查詢、數據操縱、數據定義和數據控制功能于一體,其中,CREATE.DROP、ALTER語句是

實現哪種功能(C)。A,數據查詢B.數據操縱C.數據定義D.數據控制

5.SQL語言中,刪除一個視圖的命令是(B)。A.DELETEB.DROPC.CLEARD.REMOVE

6.在SQL語言中的視圖VIEW是數據隹的(A)。A.外模式B.模式C.內模式D.存儲模式

7.下歹IJ的SQL語句中,(D)不是數據定義語句。A.CREATETABLEB.DROPVIEWC.CREATEVIEWD.GRANT

8.若要撤銷數據庫中已經存在的表S,可用(C)。A.DELETETABLESB.DELETESC.DROPTABLESD.DROPS

9.若要在基本表S中增加一列CN(課程名),可用(C)o

A.ADDTABLES(CNCHAR(8))B.ADDTABLESALTER(CNCHAR(8))

C.ALTERTABLESADD(CNCHAR(8))D.ALTERTABLES(ADDCNCHAR(8))

10.學生關系模式S(S#,Sname,Sex,Age),S的屬性分別表示學生的學號、姓名、性別、年齡。要在表

S中刪除一個屬性“年齡”,可選用的SQL語句是().

A.DELETEAgefromSB.ALTERTABLESDROPAgeC.UPDATESAgeD.ALTERTABLES'Age'

11.有關系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)?其中S#是學生號,SNAME

是學生姓名,SAGE是學生年齡,C#是課程號,CNAME是課程名稱。要查詢選修“ACCESS”課的年齡不小

于20的全體學生姓名的SQL語句是SELECTSNAMEFROMS,C,SCWHERE子句。這里的WHERE子句的內

容是(A)。

A.S.S#=SC.S#andC.C#=SC.C#andSAGE>=20andCNAME='ACCESS'

B.S.S#=SC.S#andC.C#=SC.C#andSAGEin>=20andCNAMEin'ACCESS)

C.SAGEin>=20andCNAMEin'ACCESS'

D.SAGE>=20andCNAME='ACCESS'

12.設關系數據庫中一個表S的結構為S(SN,CN,grade),其中SN為學生名,CN為課程名,二者均為字

符型;grade為成績,數值型,取值范圍0—100。若要把“張二的化學成績80分”插入S中,則可用(D)。

A.ADD

INTOS

VALUES('張二',‘化學','80')

B.INSERT

INTOS

VALUESC張二',‘化學‘,'80')

C.ADD

INTOS

VALUES('張二','化學',80)

D.INSERT

INTOS

VALUES('張二','化學',80)

13.設關系數據庫中一個表S的結構為:S(SN,CN,grade),其中SN為學生名,CN為課程名,二者均為

字符型;grade為成績,數值型,取值范圍。一100。若要更正王二的化學成績為85分,則可用()。

A.UPDATES

SETgrade=85

WHERESN='王二,ANDCN='化學,

B.UPDATES

SETgrade='85"

WHERESN='王二'ANDCN='化學'

C.UPDATEgrade=85

WHERESN='王二'ANDCN='化學,

D.UPDATEgrade=,:85,

WHERESN='王二'ANDCN='化學'

14.在SQL語言中,子查詢是(D)。

A.返回單表中數據子集的查詢語言B.選取多表中字段子集的查詢語句

C.選取單表中字段子集的查詢語句D.嵌入到另一個查詢語句之中的查詢語句

15.SQL是一種(C)語言。A.高級篁法B.人工智能C.關系數據庫D.函數型

16.有關系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是學生號,SNAME

是學生姓名,SEX是性別,C#是課程號,CNAME是課程名稱。要查詢選修“數據庫”課的全體男生姓名的

SQL語句是SELECTSNAMEFROMS,C,SCWHERE子句。這里的WHERE子句的內容是(A)。

A.S.S#=SC.S#andC.C#=SC.C#andSEX="男'andCNAME=,數據庫'

B.S.S#=SC.SttandC.Ctt=SC.CttandSEXin'男,andCNAMEin'數據庫'

C.SEX'男'andCNAME'數據庫,

D.S.SEX=,男'andCNAME="數據庫,

17.若用如下的SQL語句創建了?個表SC:

CRE/YTETABLESC(S#CHAR(6)NOTNULL,C#CHAR(3)NOTNULL,SCOREINTEGER,NOTECHAR(20));

向SC表插入如下行忖,(B)行可以被插入。

A.('201009)/111',60,必修)B.A200823','101\NULL,NULL)

C.(NULL,*103',80,'選修')D.('201132\NULL,86,'')

.假設學生關系課程關系學生選課關系

18S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)0

要查詢選修“Computer”課的男生姓名,將涉及到關系(D)。

A.SB.S,SCC.C,SCD.S,C,SC

二、簡答題

1.試述SQL語言的特點。

答:(1)綜合統一。SQL語言集定義語言DDL,數據操縱語言DML、數據控制語言DCL的功能與一體.

(2)高度非過程化。用SQL語言進行數據操縱,只要提出“做什么”,而無需指明“怎么做”,因此無

需了解存取路徑,存取路徑的選擇以及SQL語句的操作過程山系統自動完成。

(3)面向集合的操作方式。SQL語言采用集合操作方式,不僅操作對象、查找結果可以是元組的集合,

而且?次插入、刪除、更新操作的對象也可以是元組的集合。

(4)以同一種語法結構提供兩種使用方式。SQL語言既是自含式語言,又是嵌入式語言。作為自含式

語言它能夠獨立地用于聯機交互的使用方式;作為嵌入式語言,它能夠嵌入到高級語言程序中,供程序員

設計程序時使用。

(5)語言簡潔,易學易用。

2.試述SQL的定義功能。

答:SQL的數據定義功能包括定義表、定義視圖和定義索引。SQL語言使用CREATETABLE語句建立基本

表,ALTERTABLE語句修改基本表定義,DROPTABLE語句刪除基本表;使用CREATEINDEX語句建立索引,

DROPINDEX語句刪除索引;使用CREATEVIEW語句建立視圖,DROPVIEW語句刪除視圖。

3.用SQL語句建立第3章習題3中的四個表。

答:對于S表:S(SNO,SNAME,STATUS,CITY);

建S表:

CREATETABLES(SNOCHAR(2)UNIQUE,SNAMECHAR(6),STATUSCHAR(2),CITYCHAR(4));

對于P表:P(PNO,PNAME,COLOR,WEIGHT);

建P表:CREATETABLEP(PNOCHAR(2)UNIQUE,PNAMCHAR(6),COLORCHAR(2),W日GHTINTEGER);

對于J表:J(JNO,JNAME,CITY);

建J表:CREATETABLEJ(JNOCHAR(2)UNIQUE,JNAMECHAR⑻,CITYCHAR(4));

對于SPJ表:SPJ(SNO,SNO,JNO,QTY);

建表:

SPJCREATETABLESPJ(SNOCHAR(2);PNOCHAR(2),JNOCHAR(2),QTYINTEGER);

4.針對上題中建立的四個表試用SQL語言完成第3章習題3中的查詢。

⑴求供應工程J零件的供應商號碼SNO;

SELECTDISTINCYSNOFROMSPJWHEREJNO='JI'

⑵求供應工程J零件Pl的供應商號碼SNO

SELECTDISTINCYSNOFROMSPJWHEREJNO='JI'ANDPNO='Pl'

⑶求供應工程JI零件為紅色的供應商號碼SNO

SELECTSNOFROMSPJ,PWHEREJNO='JI'ANDSPJ.PNO=P.PNOANDCOLOR='紅'

⑷求沒有使用天津供應商生產的紅色零件的工程號JNO;

SELECTDISTINCYJNOFROMSPJWHEREJNONOTIN(SELECTJNOFROMSPJ,P,SWHERES.CITY='天津'AND

COLOR='紅'ANDS.SNO=SPJ.SNOANDP.PNO=SPJ.PNO)

⑸求至少用了供應商S1所供應的全部零件工程號JNO

將查詢分為兩步:

1.查詢S1供應商供應的零件號

SELECTDISTINCYPNOFROMSPJWHERESNO='SI'

2.查詢哪一個工程既使用Pl零件又P2零件

SELECTJNOFROMSPJWHEREPNO='Pl'

ANDJNOIN(SELECTJNOFROMSPJWHEREPNO='P2')

5.針對習題3中的四個表試用SQL語言完成以下各項操作:

(1)找出所有供應商的姓名和所在城市。SELECTSNAME,CITYFROMS

(2)找出所有零件的名稱、顏色、重量。SELECTPNAME,COLOR,W曰GHTFROMP

(3)找出使用供應商S1所供應零件的工程號碼。SELECTDISTINCYJNOFROMSPJWHERESNO='Si'

(4)找出工程項目J2使用的各種零件的名稱及其數量。

SELECTPNAME,QTYFROMSPJ,P

WHEREP.PNO=SPJ.PNOANDSPJJNO='J2'

(5)找上海廠商供應的所有零件號碼。SELECTPNOFROMSPJ,SWHERES.SNO=SPJ.SNOANDCITY='上海'

(6)找出使用上海產的零件的工程名稱。

SELECTJNAMEFROMSPJ,S,J

WHERES.SNO=SPJ.SNOANDS.CITY='上海'ANDJJNO=SPJJNO

(7)找出沒有使用天津產的零件的工程號碼。

'天津'

SELECTDISTINCYJNOFROMSPJWHEREJNONOTIN(SELECTJNOFROMSPJ,P;SWHERES.CITY=AND

COLOR='紅'ANDS.SNO=SPJ.SNOANDP.PNO=SPJ.PNO)

(8)把全部紅色零件的顏色改成藍色。UPDATEPSETCOLOR='藍'WHERECOLOR='紅'

(9)由S5供給J4的零件P6改為由S3供應,請作必要的修改。

UPDATESPJSETSNO='S3'WHERESNO='S5'ANDJNO='J4'ANDPNO='P6'

(10)從供應商關系中刪除S2的記錄,并從供應情況關系中刪除相應的記錄。

A.DELETEFROMSWHERESNO='S2'

B.DELETEFROMSPJWHERESNO='S2'

(11)請將(S2,J6,P4,200)插入供應情況關系。INSERTINTOSPJVALUES('S2','J6','P4',200)

6.什么是基本表?什么是視圖?兩者的區別和聯系是什么?

答:基本表是本身獨立存在的表,在SQL中一個關系就對應一個表。視圖是從一個或幾個基本表導出的

表。視圖本身不獨立存儲在數據庫中,是一個虛表。即數據庫中只存在視圖的定義而不存放視圖對應的數

據,這些數據仍存放在導出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同使用基本表那樣

使用視圖,可以在視圖上再定義視圖。

7.試述視圖的優點。

答:(1)視圖能夠簡化用戶的操作;(2)視圖使用戶以多種角度看待同一數據。

(3)視圖對重構數據庫提供一定程度的邏輯獨立性。(4)視圖能夠對機密數據提供安全保護

8.所有的視圖是否都可以更新?為什么?

答:不是。視圖是不實際存儲數據的虛表,因此對視圖的更新,最終要轉換為對基本表的更新。因為有

些視圖的更新不能唯一地有意義地轉換成對相應基本表的更新,所以,并不是所有的視圖都是可更新的。

如《概論》3.5.1中的視圖S_G(學生的學號及他的平均成績)

CREATVIEWS_G(Sno,Gavg)

ASSELECTSno,AVG(Grade)

FROMSC

GROUPBYSno;

要修改平均成績,必須修改各科成績,而我們無法知道哪些課程成績的變化導致了平均成績的變化。

9.哪類視圖是可以更新的,哪類視圖是不可更新的?各舉一例說明。

答:基本表的行列子集視圖?般是可更新的。如《概論》353中的例IK

若視圖的屬性來自集函數、表達式,則視圖肯定是不可以更新的。

10.試述某個你熟悉的實際系統中對視圖更新的規定。

11.請為三建工程項目建立一個供應情況的視圖,包括供應商代碼(SNO)、零件

代碼(PNO)、供應數量(QTY)。針對該視圖完成下列查詢:

答:建視圖:

CREATEVIEWV_SPJAS

SELECTSNO,PNO,QTY

FROMSPJ

WHEREJNO=

(SELECTJNO

FROMJ

WHEREJNAME=,三建');

對視圖的查詢:

(1)找出三建工程項目使用的各種零件代碼及其數量。

SELECTPNO,QTY

FROMV_SPJ;

(2)找出供應商S1的供應情況。

SELECTPNO,QTY/*SI供應三建工程的零件號和對應的數量*/

FROMV_SPJ

WHERESNO='S1';

第4章關系系統及其優化

一、選擇題

1.概念模型是現實世界的第一層抽象,這一類最著名的模型是(D)。

A.層次模型B.關系模型C.網狀模型D.實體-關系模型

2.區分不同實體的依據是(B)oA,名稱B.屬性C.對象D.概念

3.關系數據模型是目前最重要的一種數據模型,它的三個要素分別為(B)。

A.實體完整、參照完整、用戶自定義完整B.數據結構、關系操作、完整性約束

C.數據增加、數據修改、數據查詢D.外模式、模式、內模式

4.在(A)中一個結點可以有多個雙親,節點之間可以有多種聯系。

A.網狀模型B.關系模型C.層次模型D.以上都有

5.(B)的存取路徑對用戶透明,從而具有更高的數據獨立性、更好的安全保密性,

也簡化了程序員的工作和數據庫開發建立的工作。

A.網狀模型B.關系模型D.層次模型D.以上都有

6.在關系數據庫中,要求基本關系中所有的主屬性上不能有空值,其遵守的約束規則是(C)。

A.數據依賴完整性規則B.用戶定義完整性規則C.實體完整性規則D.域完整性規則

二、簡答題

1.試述關系模型的三個組成部分。

答:關系模型由關系數據結構、關系操作集合和關系完整性約束三部分組成。

2.試述關系數據語言的特點和分類。

答:關系數據語言可以分為三類:

關系代數語言例如ISBL;關系演算語言;具有關系代數和關系演算雙重特點的語言例如SQL

3.定義并理解下列術語,說明它們之間的聯系與區別:

(1)域,關系,元組,屬性(2)主碼,候選碼,外部碼(3)關系模式,關系,關系數據庫

答:域:域是一組具有相同數據類型的值的集合。

關系:在域DI,D2,Dn上笛卡爾積D1XD2X…義Dn的子集稱為關系,表示為

R(DI,D2,…,Dn)

元組:關系中的每個元素是關系中的元組。

屬性:關系也是一個二維表,表的每行對應一個元組,表的每列對應一個域。由于域可

以相同,為了加以區分,必須對每列起一個名字,稱為屬性(Attribute)。

候選碼:若關系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為候選碼(Candidatekey)。

主碼:若一個關系有多個候選碼,則選定其中一個為主碼(Primarykey)。

外部碼:設F是基本關系R的一個或一組屬性,但不是關系R的碼,如果F與基本關系S的主碼Ks相

對應,則稱F是基本關系R的外部碼(Foreignkey),簡稱外碼。

基本關系R稱為參照關系(Referencingrelation),基本關系S稱為被參照關系(Referencedrelation)或

目標關系(Targetrelation)。關系R和S可以是相同的關系。

關系模式:關系的描述稱為關系模式(RelationSchema)。它可以形式化地表示為:

R(U,D,dom,F)

其中R為關系名,U為組成該關系的屬性名集合,D為屬性組U中屬性所來自的域,dom為屬性向域

的映象集合,F為屬性間數據的依賴關系集合。

關系:在域DI,D2,…,Dn上笛卡爾積D1XD2X…XDn的子集稱為關系,表示為

R(DI,D2,…,Dn)

關系是關系模式在某一時刻的狀態或內容。關系模式是靜態的、穩定的,而關系是動態的、隨時間不

斷變化的,因為關系操作在不斷地更新著數據庫中的數據。

關系數據庫:關系數據庫也有型和值之分。關系數據庫的型也稱為關系數據庫模式,是對關系數據庫

的描述,它包括若干域的定義以及在這些域上定義的若干關系模式。關系數據庫的值是這些關系模式在某

一時刻對應的關系的集合,通常就稱為關系數據庫。

4.試述關系模型的完整性規則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以

為空?

答:關系模型的完整性規則是對關系的某種約束條件。關系模型中可以有三類完整性約束:實體完整

性、參照完整性和用戶定義的完整性。

其中實體完整性和參照完整性是關系模型必須滿足的完整性約束條件,被稱作是關系的兩個不變性,

應該由關系系統自動支持。

1)實體完整性規則:若屬性A是基本關系R的主屬性,則屬性A不能取空值。

2)參照完整性規則:若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的主碼Ks相對應(基本

關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必須為:

?或者取空值(F的每個屬性值均為空值);

?或者等于S中某個元組的主碼值。

3)用戶定義的完整性是針對某一具體關系數據庫的約束條件。它反映某一具體應用所涉及的數據必須滿足的

語義要求。

在參照完整性中,外部碼屬性的值可以為空,它表示該屬性的值尚未確定。但前提條件是該外部碼屬

性不是其所在關系的主屬性。

例如,在下面的“學生”表中,“專業號”是一個外部碼,不是學生表的主屬性,可以為空。其語義是,

該學生的專業尚未確定。

學生(學號,姓名,性別,專業號,年齡)

專業(專業號,專業名)

而在下面的“選修”表中的“課程號”雖然也是一個外部碼屬性,但它又是“選修”表的主屬性,所

以不能為空。因為關系模型必須滿足實體完整性。

課程(課程號,課程名,學分)

選修(學號,課程號,成績)

5.等值連接與自然連接的區別是什么?

答:連接運算中有兩種最為重要也最為常用的連接,一種是等值連接(equi-join),另一種是自然連接

(Naturaljoin)。

9為“=”的連接運算稱為等值連接。

它是從關系R與S的笛卡爾積中選取A、B屬性值相等的那些元組。即等值連接為:

RA=BS={trts|trGRAtsSSAtr[A]=ts[B]}

自然連接(Naturaljoin)是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的

屬性組,并且要在結果中把重復的屬性去掉。即若R和S具有相同的屬性組B,則自然連接可記作:

RS={trts|tr£RAtsFSAtr[B]=ts[B]}

第五章關系數據理論

一、選擇題

1.為了設計出性能較優的關系模式,必須進行規范化,規范化主要的理論依據是(A)。

A.關系規范化理論B.關系代數理論C.數理邏輯D.關系運算理論

2.規范化理論是關系數據庫進行邏輯設計的理論依據,根據這個理論,關系數據庫中的關系必須滿足:每

一個屬性都是(B)。A.長度不變的B.不可分解的C.互相關聯的D.互不相關的

3.已知關系模式R(A,B,C,D,E)及其上的函數相關性集合F={A-D,B-C,E-A},該關系模式的候

選關鍵字是(B)<,A.ABB.BEC.CDD.DE

4設學生關系S(SNO,SNAME,SSEX,SAGE,SDPART)的主鍵為SNO,學生選課關系SC(SNO,CNO,SCORE)

的主鍵為SN。和CNO,則關系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主鍵為SNO和CNO,其

滿足(A)。A.INFB.2NFC.3NFD.BCNF

5.設有關系模式W(C,P,S,G,T,R),其中各屬性的含義是:C表示課程,P表示教師,S表示學生,G

表示成績,T表示時間,R表示教室,根據語義有如下數據依賴集:D={CfP,(S,C)-G,(T,R)-C,

(T,P)fR,(T,S)-R},關系模式W的一個關鍵字是(D)。

A.(S,C)B.(T,R)C.(T,P)D.(T,S)

6.關系模式中,滿足2NF的模式(B)。A.可能是INFB.必定是INFC.必定是3NFD.必定是BCNF

7.關系模式R中的屬性全是主屬性,則R的最高范式必定是(C)?A.INFB.2NFC.3NFD.BCNF

8.消除了部分函數依賴的1NF的關系模式,必定是(B),A.INFB.2NFC.3NFD.BCNF

9.如果A->B,那么屬性A和屬性B的聯系是(B)。A.一對多B.多對一C.多對多D.以上都不是

10.關系模式的候選關鍵字可以有1個或多個,而主關鍵字有(C).A.多個B.OjC.ljD.1個或多

11.候選關鍵字的屬性可以有(D)。A.多個B.0個C.1個D.1個或多個

12.關系模式的任何屬性(A)。A.不可再分B.可以再分C.命名在關系模式上可以不唯一D.以上都不是

13.設有關系模式W(C,P,S,G,T,R),其中各屬性的含義是:C表示課程,P表示教師,S表示學生,

G表示成績,T表示時間,R表示教室,根據語義有如下數據依賴集:D={C-P,(S,C)-G,(T,R)-C,

(T,P)-R,(T,S)—R},若將關系模式W分解為三個關系模式W1(C,P),W2(S,C,G),W2(S,

T,R,C),則W1的規范化程序最高達到(D)。A.INFB.2NFC.3NFD.BCNF

14.在關系數據庫中,任何二元關系模式的最高范式必定是(D),A.INFB.2NFC.3NFD.BCNF

15.在關系規范式中,分解關系的基本原則是(B)。

I實現無損連接II.分解后的關系相互獨立川.保持原有的依賴關系

A.I和IIB.I和]IIC.ID.n

16.不能使一個關系從第一范式轉化為第二范式的條件是(B)o

A每個非屬性都完全函數依賴主屬性B.每一個非屬性都部分函數依賴主屬性

C.在一個關系中沒有非屬性存在D.主鍵由一個屬性構成

17.任何一個滿足2NF但不滿足3NF的關系模式都不存在(D)。

A.主屬性對鍵的部分依賴B.非主屬性對鍵的部分依賴

C.主屬性對鍵的傳遞依賴D.非主屬性對鍵的傳遞依賴

18.設數據庫關系模式R=(A,B,C,D,E),有下列函數依賴:A-BC,D-E,C-D;下述對R的分解中,

哪些分解是R的無損連接分解(B)。

I.(A,B,C)(C,D,E)II.(A,B)(A,C,D,E)

III.(A,C)(B,C,D,E)IV.(A,B)(C,D,E)

A,只有IVB.I和HC.I、I[和HID.都不是

19.設U是所有屬性的集合,X、Y、Z都是U的子集,且Z=U-X—Y。下面關于多值依賴的敘述中,不正確

的是(C)?

A.若XffY,則Xf—ZB.若X—Y,則X—fY

C.若XffY,且Y'GY,則XffY'D.若Z=0,則XffY

20.若關系模式R(U,F)屬于3NF,則(C)?

A.一定屬于BCNFB.消除了插入的刪除異常

C.仍存在一定的插入和刪除異常D.屬于BCNF且消除了插入和刪除異常

21.下列說法不正確的是(C)。

A.任何一個包含兩個屬性的關系模式一定滿足3NFB.任何一個包含兩個屬性的關系模式一定滿足BCNF

C.任何一個包含三個屬性的關系模式一定滿足3NFD.任何一個關系模式都一定有碼

22.設關系模式R(A,B,C),F是R上成立的FD集,F={B-C},則分解P={AB,BC}相對于F(A)。

A.是無損聯接,也是保持FD的分解B.是無損聯接,也不保持FD的分解

C.不是無損聯接,但保持FD的分解D.既不是無損聯接,也不保持FD的分解

23.關系數據庫規范化是為了解決關系數據庫中(A)的問題而引入的。

A.插入、刪除和數據冗余B.提高查詢速度

C.減少數據操作的復雜性D.保證數據的安全性和完整性

24.關系的規范化中,各個范式之間的關系是()。

A.lNFe2NFG3NFB.3NFG2NFW1NF

C.1NF=2NF=3NFD.1NFG2NFFBCNFF3NF

25.數據庫中的冗余數據是指可(D)的數據。

A.容易產生錯誤B.容易產生沖突C.無關緊要D.由基本數據導出

26.學生表(id,name,sex,age,departJd,depart_name),存在函數依賴是id—name,sex.age,depart_id;

dept_idfdept_name,其滿足(B)。A.INFB.2NFC.3NFD.BCNF

27.設有關系模式R(S,D,M),其函數依賴集:F={S-D,D-M},則關系模式R的規范化程度最高達到

(B)oA.INFB.2NFC.3NFD.BCNF

28.設有關系模式R(A,B,C,D),其數據依賴集:F={(A,B)-C,C-D},則關系模式R的規范化程

度最高達到(B)。A.INFB.2NFC.3NFD.BCNF

29.下列關于函數依賴的敘述中,哪條是不正確的(B)。

A.山X—Y,Y—Z,貝IJX-*YZB.由X—YZ,則X—Y,Y—Z

C.由XfY,WY-Z,則XWfZD.由X—Y,Z6Y,則X—Z

30.X-Y,當下列哪一條成立時,稱為平凡的函數依賴(B)。

A.XGYB.YWXC.xny=fD.XC1Y理

31.關系數據庫的規范化理論指出:關系數據庫中的關系應該滿足一定的要求,最起碼的要求是達到1NF,

即滿足(D)。

A.每個非主鍵屬性都完全依賴于主鍵屬性B.主鍵屬性唯一標識關系中的元組

C.關系中的元組不可重復D.每個屬性都是不可分解的

32.根據關系數據庫規范化理論,關系數據庫中的關系要滿足第一范式,部門(部門號,部門名,部門成員,

部門總經理)關系中,因哪個屬性而使它不滿足第一范式(B)。

A.部門總經理B.部門成員C.部門名D.部門號

33.有關系模式A(C,T,H,R,S),其中各屬性的含義是:C:課程T:教員H:上課時間R:教室S:學

根據語義有如下函數依賴集:F={C-T,(H,R)-C,(H,T)RC,(H,S)-R}

(1)關系模式A的碼是(B)。A.CB.(H,S)C,(H,R)D.(H,T)

(2)關系模式A的規范化程度最高達到(B)。A.INFB.2NF

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論