【文章內(nèi)容簡介】
一名次只有一名學生,則以下敘述中錯誤的是( B )A.(學號,課程號)和(課程號,名次)都可以作為候選鍵B.只有(學號,課程號)能作為候選鍵C.該關(guān)系模式屬于第三范式D.該關(guān)系模式屬于BCNF8.已知關(guān)系模式R(ABCD),F(xiàn)={A→C,B→C,C→D },則以下成立的是( B )A.A→B B. A→DC.AD→BC D.AC→BD9.如果X→Y且ZU成立,那么XZ→YZ成立,這條規(guī)則稱為( D )A. 自反律 B.傳遞律`C. 偽傳遞律 D.增廣律10.能夠消除多值依賴引起的冗余是( D )A.1NF B.2NF C.3NF D.4NF 二、填空題1.關(guān)系數(shù)據(jù)庫設(shè)計理論,主要包括三方面內(nèi)容: 數(shù)據(jù)依賴 、 范式 和 關(guān)系模式的規(guī)范化設(shè)計方法 。其中 數(shù)據(jù)依賴 起著核心的作用。2.關(guān)系數(shù)據(jù)庫中的關(guān)系模式至少要滿足 第一 范式。3.非規(guī)范化的關(guān)系模式在實際應(yīng)用中可能存在的問題有數(shù)據(jù)冗余、插入異常、刪除異常、更新異常。4.消除了非主屬性對主碼的部分依賴的關(guān)系模式,稱為 第二范式 模式。5.消除了非主屬性對主碼傳遞和部分依賴的關(guān)系模式,稱為 第三范式 模式。6.消除了每一屬性對主碼傳遞和部分依賴的關(guān)系模式,稱為 BCNF 模式。7.關(guān)系模式R(A,B,C)中的主碼是(A,B)構(gòu)成的屬性組,且B→C成立,但C→B不成立,則稱C與主碼之間存在的函數(shù)依賴為 部分 函數(shù)依賴。8.關(guān)系模式R(A,B,C)中的主碼是A,且B→C成立,但B→A不成立,則稱B與主碼A之間存在的函數(shù)依賴為 傳遞 函數(shù)依賴。9.在進行模式分解的同時必須考慮的兩個問題是 無損連接性和保持函數(shù)依賴 。10.Armstrong公理的三條推理規(guī)則是 自反律 、 增廣律 和 傳遞律 。三、簡答題l.理解并給出下列術(shù)語的定義:函數(shù)依賴、部分函數(shù)依賴、完全函數(shù)依賴、傳遞依賴、1NF、2NF、3NF、BCNF。函數(shù)依賴:設(shè)R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集。若對于R(U)的任意一個可能的關(guān)系r,r中不可能存在兩個元組在X上的屬性值相等,而在Y上的屬性值不等,則稱X函數(shù)確定Y或Y函數(shù)依賴于X。部分函數(shù)依賴:設(shè)關(guān)系模式R(U)中,X,YU,若X→Y,但對于X的某一個真子集Z→Y成立,則稱Y部分函數(shù)依賴于X。完全函數(shù)依賴:設(shè)關(guān)系模式R(U)中,X,YU,如果X→Y,并且對于X的任何一個真子集Z,Z→Y都不成立,則稱Y完全依賴于X,記作XY。傳遞依賴:在關(guān)系模式R(U)中,設(shè)X、Y、Z是R的三個不同屬性子集,如果X→Y()成立,但Y→X不成立,而Y→Z(),則稱Z對X傳遞函數(shù)依賴。 1NF:在關(guān)系模式R中的每一個具體關(guān)系r中,如果每個屬性值都是不可再分的最小數(shù)據(jù)單位,則稱R是第一范式關(guān)系模式,簡記為R1NF。2NF:若關(guān)系模式R是1NF,且所有非主屬性都完全函數(shù)依賴于任意一個候選碼,則稱R 是第二范式關(guān)系模式,簡記為R2NF。3NF:若關(guān)系模式R是2NF,且所有非主屬性對任何候選關(guān)鍵字都不存在傳遞函數(shù)依賴,則稱R是第三范式關(guān)系模式,簡記為R3NF。BCNF:若關(guān)系模式R是1NF,如果對于R的每個函數(shù)依賴X→Y,若YX,則X必含有候選碼,則稱R是BCNF范式。換句話說,在關(guān)系模式R中,如果每一個決定因素都包含候選碼,則RBCNF。2. 設(shè)一關(guān)系為:訂單(訂單號,顧客姓名,商品貨號,定購數(shù)量,交貨日期),判斷此關(guān)系屬于哪一范式,為什么?此關(guān)系的主碼是訂單號,主屬性只有一個,因此它屬于BCNF。3.設(shè)關(guān)系模式R(A,B,C),F(xiàn)是R上成立的FD集,有F={ A→C,B→C }。此題需將題目改為:設(shè)關(guān)系模式R(A,B,C),F(xiàn)是R上成立的FD集,有F={ A→B,B→C }。 (1)試說明為什么R不是3NF模式?由于R的主碼為A,存在傳遞函數(shù)依賴:A→B,B→C;因此R不屬于第三范式。 (2)試分析模式R的數(shù)據(jù)冗余問題。關(guān)系R中的C屬性會存在在數(shù)據(jù)冗余。(3)試把R分解成3NF模式集。分解成3NF模式集:R1(A,B);R2(B,C)。4.寫出關(guān)系模式規(guī)范化的步驟。1NF(消除非主屬性對碼的部分函數(shù)依賴)→2NF(消除非主屬性對碼的傳遞函數(shù)依賴)→ 3NF(消除主屬性對碼的部分和傳遞函數(shù)依賴)→BCNF5.試述模式分解時考慮無損連接性和保持函數(shù)依賴的意義。一個關(guān)系分解為多個關(guān)系,相應(yīng)地原來存儲在一張二維表內(nèi)的數(shù)據(jù)就要分散存儲到多張二維表中,要使這個分解有意義,起碼的要求是后者不能丟失前者的信息,如果一個分解具有無損連接性,則它能夠保證不丟失信息。而如果一個分解保持了函數(shù)依賴,則它可以減輕或解決各種異常情況。第四章 習 題一、單項選擇題1.在SQL中,與關(guān)系代數(shù)中的投影運算對應(yīng)的子句是( ) A SELECT B FROM C WHERE D ORDER BY2. 在SQL的語句中,ALTER的作用是() A 刪除基本表 B 修改基本表中的數(shù)據(jù) C 修改基本表的結(jié)構(gòu) D 修改視圖3. 用SQL語言描述“在教師表中查找女教師的全部信息”,以下描述正確的是( )A SELECT FROM 教師表 IF(性別=‘女’)B SELECT 性別FROM 教師表 IF(性別=‘女’)C SELECT * FROM 教師表 WHERE(性別=‘女’) D SELECT * FROM 性別WHERE(性別=‘女’)4. 在基本SQL語言中,不可以實現(xiàn)( )A 定義視圖 B 定義基本表C 查詢視圖和基本表 D 并發(fā)控制5. SELECT語句執(zhí)行的結(jié)果是( ) A 數(shù)據(jù)項 B 元組 C 表 D 數(shù)據(jù)庫6. 在SQL中,用戶可以直接操作的是( ) A 基本表 B 視圖 C 基本表或視圖 D 基本表和視圖7. 在SQL中使用UPDATE對表中數(shù)據(jù)進行修改時,應(yīng)使用的子句是() A WHERE B FROM C VALUES D SET8. SQL語言具有的功能是( ) A 關(guān)系規(guī)范化,數(shù)據(jù)操作,數(shù)據(jù)控制 B 數(shù)據(jù)定義,數(shù)據(jù)操作,數(shù)據(jù)控制 C 數(shù)據(jù)定義,關(guān)系規(guī)范化,數(shù)據(jù)控制 D 數(shù)據(jù)定義,關(guān)系規(guī)范化,數(shù)據(jù)操作9. 當選擇滿足一定條件的元組進行分組時,應(yīng)使用的關(guān)鍵字是( ) A SELECT B GROUP C WHERE D HAVING10. 使用CREATE INDEX語句建立的是( ) A 數(shù)據(jù)庫 B 表 C 索引 D 視圖二、填空題1.SQL插入記錄的命令是INSERT ,刪除記錄的命令是____,更新記錄的命令是__。2.SQL查詢語句中,在SELECT子句中允許出現(xiàn)列名和___。3. SQL語句中,Order By可以對___進行排序。4. 在SQL查詢語句中,如果要去掉查詢結(jié)果中的重復(fù)值,需使用__ _。5. 基本表中增加一個新列后,各元組在新列上的值是___。6.SQL查詢語句中,對應(yīng)關(guān)系代數(shù)中的“選擇”運算的語句是____。7.在SELECT語句中,用*號表示___。8.在SQL語言中,DELETE語句的作用是____。9.SQL包括了數(shù)據(jù)定義、數(shù)據(jù)查詢、數(shù)據(jù)操作和__功能。10.在SQL中表示并集的關(guān)鍵字是___。三、簡答1. SQL語言有什么特點,包括哪幾部分的功能?SQL語言的主要特點包括如下:(1) 功能一體化。功能強大,通用性好,把多種功能融為一體;(2) 高度非過程化。用戶只需要指出“做什么”,而不需要指出“怎么做”,數(shù)據(jù)的存取和整個語句的操作過程由系統(tǒng)自動完成,大大減輕了用戶的負擔;(3) 面向集合的操作方式。查詢的結(jié)果和更新操作的對象均可為元組的集合;(4) 簡單易學,靈活易用。語言簡潔,語法簡單。既可直接使用SQL語句對數(shù)據(jù)庫進行操作,也可把SQL語句嵌入到高級語言程序中。SQL主要有三大功能:數(shù)據(jù)定義功能可用于定義SQL模式、基本表、視圖和索引;數(shù)據(jù)