數(shù)據(jù)庫系統(tǒng) 包括題目和答案.doc
《數(shù)據(jù)庫系統(tǒng) 包括題目和答案.doc》由會員分享,可在線閱讀,更多相關《數(shù)據(jù)庫系統(tǒng) 包括題目和答案.doc(23頁珍藏版)》請在裝配圖網(wǎng)上搜索。
數(shù)據(jù)庫系統(tǒng)原理復習題 第1章 一、選擇題 1. 數(shù)據(jù)庫(DB)、數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關系是(A )。 A. DBS包括DB和DBMS B. DBMS包括DB和DBS C. DB包括DBS和DBMS D. DBS就是DB,也就是DBMS 2. 概念模型是現(xiàn)實世界的第一層抽象,這一類模型中最著名的模型是(D )。 A. 層次模型 B. 關系模型 C. 網(wǎng)狀模型 D. 實體-聯(lián)系模型 3. 目前,數(shù)據(jù)庫管理系統(tǒng)最常用的邏輯數(shù)據(jù)模型是( C)。 A.網(wǎng)狀模型 B.層次模型 C.關系模型 D.面向對象模型 4. 下列四項中,不屬于數(shù)據(jù)庫系統(tǒng)特點的是( C)。 A. 數(shù)據(jù)共享 B. 數(shù)據(jù)完整性 C. 數(shù)據(jù)冗余度高 D. 數(shù)據(jù)獨立性高 5. 數(shù)據(jù)模型的三個要素分別是(B )。 A. 實體完整性、參照完整性、用戶自定義完整性 B. 數(shù)據(jù)結構、數(shù)據(jù)操作、數(shù)據(jù)完整性約束條件 C. 插入數(shù)據(jù)、修改數(shù)據(jù)、刪除數(shù)據(jù) D. 外模式、模式、內模式 6. 數(shù)據(jù)庫三級結構從內到外的3個層次依次為(B)。 A. 外模式、模式、內模式 B. 內模式、模式、外模式 C. 模式、外模式、內模式 D. 內模式、外模式、模式 7. 下列關于數(shù)據(jù)庫系統(tǒng)的正確敘述是(A): A. 數(shù)據(jù)庫系統(tǒng)減少了數(shù)據(jù)冗余 B. 數(shù)據(jù)庫系統(tǒng)避免了一切冗余 C. 數(shù)據(jù)庫系統(tǒng)中數(shù)據(jù)的一致性是指數(shù)據(jù)類型的一致 D. 數(shù)據(jù)庫系統(tǒng)比文件系統(tǒng)能管理更多的數(shù)據(jù) 8. 數(shù)據(jù)的邏輯獨立性是指(B)。 A.外模式改變時保持應用程序不變 B.模式改變時保持外模式不變 C.內模式改變時保持模式不變 D.數(shù)據(jù)改變時保持應用程序不變 9. 數(shù)據(jù)的物理獨立性是指(C)。 A.外模式改變時保持應用程序不變 B.模式改變時保持外模式不變 C.內模式改變時保持模式不變 D.數(shù)據(jù)改變時保持應用程序不變 10. 公司有多個部門和多名職員,每個職員只能屬于一個部門,一個部門可以有多名職員,從部門到職員的聯(lián)系類型是(D)。 A. 多對多 B. 一對一 C. 多對一 D. 一對多 11. 儲蓄所有多個儲戶,儲戶在多個儲蓄所之間存款,儲戶與儲蓄所之間是(C)。 A. 一對一聯(lián)系 B. 一對多聯(lián)系 C. 多對多聯(lián)系 D. 不確定聯(lián)系 12. 描述數(shù)據(jù)庫全體數(shù)據(jù)的全局邏輯結構和特性的是( A)。 A. 模式 B. 內模式 C. 外模式 D. 以上三級模式 二、填空 1. 數(shù)據(jù)庫系統(tǒng)一般由(數(shù)據(jù)庫)、(數(shù)據(jù)庫管理系統(tǒng))、(應用程序)和(數(shù)據(jù)庫管理員)組成。 2. 數(shù)據(jù)庫是長期存儲在計算機中、有(組織)的、可(共享)的數(shù)據(jù)集合。 3. DBMS表示(DataBase Management System),它是位于(用戶)和(操作系統(tǒng))之間的一層數(shù)據(jù)管理軟件。 4. 實體之間的聯(lián)系可抽象為三類,它們是(一對一)、(一對多)和(多對多)。 5. 數(shù)據(jù)模型的三要素包括(數(shù)據(jù)結構)、(數(shù)據(jù)操作)和(數(shù)據(jù)完整性約束條件)三部分。 6. 根據(jù)數(shù)據(jù)模型的應用目的不同,數(shù)據(jù)模型分為(概念模型)、(邏輯模型)和(物理模型)等。 7. 按照數(shù)據(jù)結構的類型命名,邏輯模型分為(關系模型)、(層次模型)和(網(wǎng)狀模型)等。 8. E-R圖中,(矩形)表示實體,(橢圓)表示屬性,(菱形)表示實體之間的聯(lián)系。 三、簡述題 1. 數(shù)據(jù)庫是長期存貯在計算機內的、有組織的、可共享的大量數(shù)據(jù)的集合。 2. 數(shù)據(jù)庫管理系統(tǒng)的主要功能包括: (1)數(shù)據(jù)定義功能, (2)數(shù)據(jù)的組織、存儲和管理, (3)數(shù)據(jù)操縱功能, (4)數(shù)據(jù)庫事務的管理與運行管理, (5)數(shù)據(jù)的建立與維護, (6)其它功能。 3. 數(shù)據(jù)結構、數(shù)據(jù)操作和數(shù)據(jù)完整性約束條件構成數(shù)據(jù)模型的三要素。 4. 數(shù)據(jù)庫中數(shù)據(jù)操作包括插入、修改、刪除和查詢。 6. 實體型之間的聯(lián)系包括一對一聯(lián)系、一對多聯(lián)系和多對多聯(lián)系三種類型。 8. 數(shù)據(jù)庫領域中常用的邏輯數(shù)據(jù)模型有層次模型、網(wǎng)狀模型、關系模型、面向對象模型等。 9. 數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應用系統(tǒng)和數(shù)據(jù)庫管理員等組成。 10. 數(shù)據(jù)庫系統(tǒng)三級模式結構是指模式、內模式和外模式。 三、簡述題 1. 數(shù)據(jù)庫的定義是什么? 2. 數(shù)據(jù)庫管理系統(tǒng)的主要功能有哪些? 3. 數(shù)據(jù)模型的三要素是什么? 4. 數(shù)據(jù)庫中數(shù)據(jù)操作包括哪些? 5. 實體型之間的聯(lián)系包括哪三種? 6. 數(shù)據(jù)庫領域中常用的邏輯數(shù)據(jù)模型有哪些? 7. 數(shù)據(jù)庫系統(tǒng)由哪幾部分組成? 8. 數(shù)據(jù)庫系統(tǒng)三級模式結構? 答案: 1. 數(shù)據(jù)庫是長期存貯在計算機內的、有組織的、可共享的大量數(shù)據(jù)的集合。 2. 數(shù)據(jù)庫管理系統(tǒng)的主要功能包括: (1)數(shù)據(jù)定義功能, (2)數(shù)據(jù)的組織、存儲和管理, (3)數(shù)據(jù)操縱功能, (4)數(shù)據(jù)庫事務的管理與運行管理, (5)數(shù)據(jù)的建立與維護, (6)其它功能。 3. 數(shù)據(jù)結構、數(shù)據(jù)操作和數(shù)據(jù)完整性約束條件構成數(shù)據(jù)模型的三要素。 4. 數(shù)據(jù)庫中數(shù)據(jù)操作包括插入、修改、刪除和查詢。 6. 實體型之間的聯(lián)系包括一對一聯(lián)系、一對多聯(lián)系和多對多聯(lián)系三種類型。 8. 數(shù)據(jù)庫領域中常用的邏輯數(shù)據(jù)模型有層次模型、網(wǎng)狀模型、關系模型、面向對象模型等。 9. 數(shù)據(jù)庫系統(tǒng)由數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、應用系統(tǒng)和數(shù)據(jù)庫管理員等組成。 10. 數(shù)據(jù)庫系統(tǒng)三級模式結構是指模式、內模式和外模式。 四、應用題 1. 設有商品和顧客兩個實體,商品實體包括商品編號、名稱、單價等屬性,顧客實體包括顧客編號、姓名、聯(lián)系電話等屬性,兩個實體存在如下的關系: l 一個顧客可購買多種任意商品 l 每次可購買一定數(shù)量的商品(一天只限一次購物) 繪出E-R圖,并標明屬性和聯(lián)系的類型 2. 為某百貨公司設計一個E-R模型:百貨公司管轄若干個連鎖商店,每家商店經(jīng)營若干商品,每家商店有若干職工,但每個職工只能服務于一家商店。實體類型“商店”的屬性有:商店編號、商店名稱、地址、聯(lián)系電話。實體類型“商品”的屬性有:商品編號、商品名稱、單價、產(chǎn)地。實體類型“職工”的屬性有:職工編號、職工姓名、性別、工資。在聯(lián)系中應反映出職工參加某商店工作的工作時間,商店推銷產(chǎn)品的銷售量。 3. 試為一網(wǎng)上書店建立概念模型。 第2章 1、 選擇題 1.關于關系模型,下列說法中不正確的是( D)。 B. 關系模型是建立在集合代數(shù)的基礎上的 C. 數(shù)據(jù)的邏輯結構是一個二維表 D. 關系操作是面向集合的操作方式 E. 關系中的數(shù)據(jù)可以是任意的 2關于關系,下列說法中不正確的是(D )。 B. 關系中每個屬性值都是不可分解的 B. 關系中不允許出現(xiàn)相同的元組 C. 關系中不考慮元組間的順序 D. 元組中的屬性是有序的 3關系代數(shù)中,選擇運算的運算符號是(C) A. B.Π C. D.θ 4關系查詢時取出關系的某些列,并取消重復元組的關系運算為(B)。 B. 選擇運算 B. 投影運算 C. 連接運算 D.笛卡兒積 5根據(jù)關系模式的實體完整性規(guī)則,一個關系的主碼屬性(C)。 A.不能有兩個 B.不能成為另一個關系的外碼 C.不允許為空 D.可以取任意值 6在關系模式R(R#,RN,S#)和S(S#,SN,SD)中,R的主鍵是R#,S的主鍵是S#,則S#在R中稱為( B)。 C. 主碼 B. 外碼 C. 候選碼 D. 全碼 7“成績在0-100之間”這種約束屬于哪種完整性約束(C )。 D. 主鍵約束 B. 外鍵約束 C. 用戶定義的完整性約束 D. 全不是 8關系R如下圖所示,a1的象集是( B)。 A B C a1 b1 c1 a1 b2 c3 a2 b1 c2 E. {b1,b2 } B. {(b1,c1),(b2,c3)} C. {c1,c3} D. {(b1,c1),(b2,c3), (b1,c2)} 二、簡述題 9. 關系模型的三個組成部分是什么? 10. 關系模型的完整性約束分為哪三類? 11. 關系代數(shù)中提供了哪些關系的查詢運算? 答案 1. 關系模型由關系數(shù)據(jù)結構、關系操作和關系的完整性約束條件三部分組成。 2. 關系的完整性約束包括主鍵約束、外鍵約束和用戶定義的完整性約束三種。 3.關系代數(shù)中的查詢包括關系的并、交、差、笛卡兒積、選擇、投影、連接和除法等 三、用關系代數(shù)表示查詢 12設有選課關系數(shù)據(jù)庫模式如下: Student(Sno,Sname,Sage,Ssex) Course(Cno,Cname) SC(Sno,Cno,Grade) 請用關系代數(shù)表達式表示下列查詢: (1) 查詢選修了2號課程的學生的學號 (2) 查詢學號為“03”的學生的學號和姓名 (3) 查詢年齡大于20歲的男同學的學號和姓名 (4) 查詢選修了課程的學生的學號和姓名 (5) 查詢有選修學生的課程號和課程名 (6) 查詢選修了5號課程的學生的姓名和成績 (7) 查詢選修了“數(shù)據(jù)庫原理”課程的學生的學號和姓名 答案: (1) ∏Sno (σCno=‘2’(SC)) select sno from sc where cno=’2’ (2) ∏Sno,Sname (σSno=‘03’(Student)) Select sno,sname from student where sno=’03’ (3) ∏Sno,Sname (σSage >20 ∧ Ssex=‘男’(Student)) Select sno,sname from student where sage>20 and ssex=’男’ (4) ∏Sno,Sname (Student SC ) Select sc.sno,sanme from sc,student where student.sno=sc.sno (5) ∏Cno,Cname (Course SC) Select sc.cno,cname from course,sc where course.cno=snc.cno (6) ∏Sname,Grade (Student (σCno=‘5’ (SC ) ) Select sname,grade from student,sc where student.sno=sc.sno and cno=’5’ (7) ∏Sno,Sname (σCname=‘數(shù)據(jù)庫原理’(Student SC Course) 或∏Sno,Sname (Student ∏Sno ( SC σCname=‘數(shù)據(jù)庫原理’(Course) ) Select sno,sname from student,sc,course where sc.sno=student.sno and sc.cno=course.cno and cname=’數(shù)據(jù)庫原理’ 13現(xiàn)有圖書借閱關系數(shù)據(jù)庫模式如下: 圖書(圖書號,書名,作者,單價,庫存量) 讀者(讀者號,姓名,工作單位,地址) 借閱(圖書號,讀者號,借期,還期,備注) 其中,還期為NULL表示該書未還。 用關系代數(shù)表示如下查詢: (1) 查詢讀者號為“R016”的讀者姓名、工作單位 (2) 查詢圖書號為“B5”的讀者姓名 (3) 查詢讀者“李林”所借閱圖書的書名 (4) 查詢讀者“李林”所借閱圖書中未還的書名 答案 (1) ∏姓名,工作單位(σ讀者號=‘R016’(讀者)) (2) ∏姓名(σ圖書號 =‘B5’(讀者 借閱)) (3) ∏書名(σ姓名 =‘李林’(讀者 借閱 圖書)) (4) ∏姓名(σ姓名 =‘李林’∧ 還期 = NULL(讀者 借閱 圖書)) 或 ∏姓名((σ姓名=‘李林’(讀者)) (σ還期 = NULL(借閱)) 圖書) 2、∏Sname,Grade (σCno=’5’(Student SC)) 3、∏Sno,Sname (Student ∏Sno (SC σCname=’操作系統(tǒng)’(Course)) 第3章 1、 選擇題 1. SQL語言稱為( C)。 A.結構化定義語言 B. 結構化操縱語言 C. 結構化查詢語言 D. 結構化控制語言 2. 下列SQL語句中,修改表結構的是 ( D) A.CREATE B.UPDATE C.INSERT D.ALTER 3. 在SELECT語句中, 用于實現(xiàn)數(shù)據(jù)分組統(tǒng)計的子句是 (C ) A.FROM子句 B.WHERE子句 C.GROUP BY子句 D.ORDER BY 子句 4. 下列哪種運算不能引出子查詢。( B ) A.IN B.LIKE C.EXISTS D.比較運算 5. 基于學生選課數(shù)據(jù)庫中的3個關系:S(學號, 姓名, 性別, 年齡)、C(課程號, 課程名, 任課教師)、 SC(學號, 課程號, 成績),若要求查找選修“數(shù)據(jù)庫技術”這門課程的學生姓名和成績,將使用關系(D ) A.S和SC B.SC和C C.S和C D.S、SC和C 6. 基于學生選課數(shù)據(jù)庫中的3個關系:S(學號, 姓名, 性別, 年齡)、C(課程號, 課程名, 任課教師)、 SC(學號, 課程號, 成績),若要求查找學生的平均成績大于80分的學號和平均成績,下面列出的SQL語句,正確的是(C )。 A.SELECT 學號, AVG(成績) FROM SC WHERE AVG(成績)>80 B.SELECT 學號, AVG(成績) FROM SC WHERE AVG(成績)>80 GROUP BY 學號 C.SELECT 學號, AVG(成績) FROM SC GROUP BY 學號 HAVING AVG(成績)>80 D.SELECT 學號, 成績 FROM SC GROUP BY 學號 HAVING AVG(成績)>80 7. 下列SQL語句中,正確的是( C)。 A.SELECT S#, SNAME FROM SC GROUP BY S# B.SELECT S# FROM SC GROUP BY S# HAVING COUNT(*)>3 C.SELECT S# FROM SC GROUP BY S# WHERE COUNT(*)>3 D.SELECT S# FROM SC WHERE COUNT(*)>3 GROUP BY S# 8. 在視圖上不能完成的操作是(C)。 A.更新視圖 B.查詢視圖 C.在視圖上定義新的基本表 D.在視圖上定義新視圖 二、填空 1. 在SQL的查詢語句中,使用(FROM)子句數(shù)據(jù)源,使用(WHERE)子句選擇參與運算的數(shù)據(jù)行,使用(SELECT)子句指定目標列??墒褂茫℅ROUP BY)子句結合聚集函數(shù)進行分組統(tǒng)計。若對查詢結果排序可使用(ORDER BY)子句。 2. 在SQL中,(CREATE TBLE)語句創(chuàng)建表和聲明完整性約束條件。如果要為一個基本表增加列和完整性約束條件,應該使用(ALTER TABLE)語句。刪除表的定義及表中的數(shù)據(jù)和索引,應該使用的語句是(DROP TABLE)。 3. 視圖是定義在(基本表)之上的虛表,對視圖也可以進行插入、修改、刪除和查詢操作。但視圖不存儲數(shù)據(jù),對視圖的一切操作最終要轉換為對(基本表)的操作。 三、簡述題 1.SQL語言的特點? 2.SQL語言中常用的語句有哪些? 3.SQL中提供了哪些常用的聚集函數(shù)?它們如何使用? 4.什么是連接查詢?連接查詢如何指定連接條件? 5.什么是子查詢?用在WHERE子句中的子查詢有幾種調用方式? 答案: 1. SQL語言集數(shù)據(jù)查詢、數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控功能于一體,其主要的操作語句包括CREATE、ALTER、DROP、INSERT、UPDATE、DELETE、SELECT、GRANT、REVOKE等。 2. SQL中提供了一些聚集函數(shù),用于統(tǒng)計數(shù)據(jù)庫數(shù)據(jù),包括COUNT、AVG、SUM、MAX、MIN等,除COUNT(*)用法外,統(tǒng)計時均忽略空值,使用DISTINCT選項可忽略對重復數(shù)據(jù)的統(tǒng)計。聚集行數(shù)只可用于SELECT子句和HAVING子句。 3. 若一個查詢同時涉及到兩個表,則稱之為連接查詢。連接查詢的連接條件可在WHERE子句中通過一個比較運算指定,或在FROM子句中在指定連接方式的同時指定連接條件。 4. 子查詢又稱嵌套查詢,是嵌套在SELECT、INSERT、UPDATE、DELETE等語句中的SELECT查詢語句。多用在WHERE子句中,使用子查詢的結果作為搜索條件。在Where子句中使用子查詢有以下幾種方式: 由IN引出子查詢、由比較運算符引出子查詢、由EXISTS引出子查詢。 四、數(shù)據(jù)庫操作 1. 倉庫管理系統(tǒng) 在某倉庫管理系統(tǒng)中,有兩個表:KC表和CKMX表, 其結構和部分數(shù)據(jù)如下: 表1、KC表結構和數(shù)據(jù) 材料代碼 材料名稱 單位 單價 庫存數(shù)量 01 計算機 臺 5000.00 10 02 電視機 臺 2000.00 20 … … … … … 表2、CKMX表結構和數(shù)據(jù) 編號 材料代碼 出庫日期 出庫數(shù)量 1 01 2009-10-10 4 2 01 2009-11-20 3 3 02 2009-11-20 5 … … … … 其中,KC表保存當前倉庫庫存材料的信息,CKMX表存放庫存材料的出庫名細。 例如,KC表第一行表示該倉庫中現(xiàn)有計算機10臺。CKMX表第二行表示2009年11月20日從倉庫中出庫3臺計算機。 (1) 試寫出創(chuàng)建KC表和CKMX表的SQL語句,要求定義實體和參照完整性。 (2) 寫出在KC表上按材料名稱建立唯一索引的SQL語句。 (3) 創(chuàng)建一個視圖,用于查詢計算機的出庫明細。 (4) 寫出將表中數(shù)據(jù)插入到相應表中的語句。 (5) 從表CKMX中統(tǒng)計出各種材料的出庫次數(shù)和出庫總數(shù)量,試寫出SQL語句。 (6) 寫出由KC表和CKMX表產(chǎn)生如下結果集的查詢語句: 編號 出庫日期 材料名稱 單價 出庫數(shù)量 金額 1 2009-10-10 計算機 5000.00 4 20000.00 2 2009-11-20 計算機 5000.00 3 15000.00 … … … … … … 答案: . 倉庫管理系統(tǒng) (8) 創(chuàng)建表 CREATE TABLE KC ( 材料代碼 char(2) PRIMARY KEY, 材料名稱 char(20), 單位 char(10), 單價 numeric(10,2), 庫存數(shù)量 int ) CREATE TABLE CKMX ( 編號 char(4) PRIMARY KEY, 材料代碼 char(2) REFERENCES KC(材料代碼), 出庫日期 date, 出庫數(shù)量 int ) Or或者 CREATE TABLE CKMX ( 編號 char(4) PRIMARY KEY, 材料代碼 char(2), 出庫日期 date, 出庫數(shù)量 int, Foreign key (材料代碼) REFERENCES KC(材料代碼) ) (9) 創(chuàng)建索引 CREATE UNIQUE INDEX index1 ON KC(材料名稱) Drop index index1 on KC (10) 創(chuàng)建視圖 CREATE VIEW viewComputer AS SELECT * FROM CKMX,KC WHERE CKMX.材料代碼=KC.材料代碼 and KC.材料名稱= 計算機 (11) 插入數(shù)據(jù) INSERT INTO KC VALUES(01,計算機,臺,5000.00,10) INSERT INTO KC VALUES(02,電視機,臺,2000.00,20) INSERT INTO CKMX VALUES(1,01,2009-10-10,4) INSERT INTO CKMX VALUES(2,01,2009-10-20,3) INSERT INTO CKMX VALUES(3,02,2009-10-20,5) (12) 統(tǒng)計 SELECT 材料代碼,COUNT(*) as 次數(shù), SUM(出庫數(shù)量) as 出庫數(shù)量 from CKMX group by 材料代碼 (13) 查詢 SELECT ckmx.編號,出庫日期,材料名稱,單價,出庫數(shù)量,出庫數(shù)量*單價 as 金額 FROM KC,CKMX WHERE KC.材料代碼 = CKMX.材料代碼 2. 財務管理系統(tǒng) 學校有多名學生,財務處每年要收一次學費。財務處現(xiàn)用兩個表記錄相關信息,其結構和部分數(shù)據(jù)如下表: 表1、XS表結構和數(shù)據(jù) 學號 姓名 性別 年齡 所在系 200901 張明 男 18 計算機 200902 王曉萌 21 信息 200903 李剛 男 20 計算機 … … … … … 表2、JFQK表結構和數(shù)據(jù) 序號 學號 交費日期 書費 學費 1 200901 2009-09-10 500.50 5000 2 200902 2009-09-10 400.00 5000 3 200901 2010-10-10 300.20 4000 … … … … 其中,XS表是在校學生名冊和基本信息登記表,JFQK表是學生交學費情況記錄。 (1) 試寫出創(chuàng)建XS表和JFQK表的SQL語句,要求定義實體和參照完整性。 (2) 寫出在XS表上按學生姓名建立唯一索引的SQL語句。 (3) 創(chuàng)建一個視圖,用于查詢計算機系同學的基本信息。 (4) 寫出將表中數(shù)據(jù)插入到相應表中的語句。 (5) 將計算機系同學的年齡增加1歲,并將計算機系同學的學費減1000元。 (6) 從表JFQK中統(tǒng)計出每個同學的交費次數(shù)和交費總金額,試寫出SQL語句。 (7) 寫出由XS表和JFQK表能產(chǎn)生類似如下結果集的查詢語句: 序號 姓名 交費日期 書費 學費 合計 1 張明 2009-09-10 500.50 5000 5500.50 2 王曉萌 2009-09-10 400.00 5000 5400.00 … … … … … … 答案 財務管理系統(tǒng) (5) 創(chuàng)建表 CREATE TABLE XS ( 學號 char(6) PRIMARY KEY, 姓名 char(10) not null, 性別 char(2) null, 年齡 smallint, 所在系 char(20) ) CREATE TABLE JFQK ( 序號 int PRIMARY KEY, 學號 char(6) REFERENCES XS(學號), 交費日期 date, 書費 numeric(6,2), 學費 int ) (6) 創(chuàng)建索引 CREATE UNIQUE INDEX index1 ON XS(姓名) (7) 創(chuàng)建視圖 CREATE VIEW viewComputer1 AS SELECT * FROM XS WHERE 所在系 = 計算機 (8) 插入數(shù)據(jù) INSERT INTO XS VALUES(200901,張明, 男,18,計算機) INSERT INTO XS VALUES(200902,王曉萌,null,21,信息) INSERT INTO XS VALUES(200903,李剛 , 男,20,計算機) INSERT INTO JFQK VALUES(1,200901,2009-09-10,500.50,5000) INSERT INTO JFQK VALUES(2,200902,2009-09-10,400.00,5000) INSERT INTO JFQK VALUES(3,200901,2010-10-10,300.20,4000) (9) 更新數(shù)據(jù) UPDATE XS SET 年齡 = 年齡 + 1 WHERE 所在系 = 計算機 或 UPDATE viewComputer1 SET 年齡 = 年齡 + 1 UPDATE JFQK SET 學費 = 學費 -1000 WHERE 計算機 = (SELECT 所在系 FROM XS WHERE XS.學號 = JFQK.學號) (10) 統(tǒng)計 SELECT 學號,COUNT(*) as 交費次數(shù), SUM(書費+學費) as 總金額 FROM JFQK GROUP BY 學號 (11) 查詢 SELECT 序號,姓名,交費日期,書費,學費,書費+學費 as 合計 FROM XS,JFQK WHERE XS.學號 = JFQK.學號 第4、5章 1、 選擇題 1. 實體完整性要求主屬性不能取空值,這通常是通過(D )。 A.DBMS自動保證 B. 用戶定義的完整性約束來保證 C. 定義外鍵來保證 D. 定義主鍵來保證 2. 下列SQL語句中,能夠實現(xiàn)參照完整性控制的語句是(D )。 A. NOT NULL B. PRIMARY KEY C. UNIQUE D. FOREIGN KEY 3. 若關系R(A,B,C)主碼為A, 關系S(D,A)主碼為D,外碼為A,下面在關系S中哪個元組違反了完整性約束條件?( C)。 R S A B C D A 1 2 2 1 3 3 1 2 3 4 2 Null 3 1 A. (1, 2) B. (2, Null) C. (3, 3) D. (4, 1) 4. 使用CREATE TABLE STU (NO CHAR(4) NOT NULL, NAME CHAR(8) NOT NULL, SEX CHAR(2), AGE INT ) 創(chuàng)建了表STU ,下列哪些語句可以插入到表中。( B) A.INSERT INTO STU VALUES(‘1031’,’張華’,男,23) B.INSERT INTO STU VALUES (‘1031’,’ 張華’,NULL,NULL) C.INSERT INTO STU VALUES(NULL,’ 張華’,’男’,23) D.INSERT INTO STU VALUES (‘1031’,NULL, ’男’,23) 5. 下列哪種操作不會激活觸發(fā)器。( A) A. SELECT B. UPDATE C.INSERT D. DELETE 6. 在SQL語言中授權的操作是通過( C)語句實現(xiàn)的。 A.DELETE B.UPDATE C.GRANT D.REVOKE 二、簡述題 1. 什么是數(shù)據(jù)庫的安全性?數(shù)據(jù)庫系統(tǒng)中常用的安全控制方法和技術有哪些? 2. 什么是數(shù)據(jù)庫的完整性?關系數(shù)據(jù)庫的完整性包括哪幾類? 3. 什么是觸發(fā)器?觸發(fā)器由哪些事件激活? 答案: 1. 數(shù)據(jù)庫的安全性是指保護數(shù)據(jù)庫,防止因用戶非法使用數(shù)據(jù)庫造成數(shù)據(jù)泄露、更改或破壞。 數(shù)據(jù)庫系統(tǒng)中常用的安全控制方法有技術包括用戶標識和鑒別、存取控制、定義視圖、審計、數(shù)據(jù)加密等。 2. 數(shù)據(jù)完整性是指數(shù)據(jù)庫中的數(shù)據(jù)在邏輯上的一致性和準確性。 關系數(shù)據(jù)庫的完整性包括實體完整性、參照完整性和用戶定義完整性三類。 3. 觸發(fā)器(Trigger)是用戶定義在關系表上的一類由事件驅動的特殊存儲過程。觸發(fā)器由對表的插入、修改和刪除事件激活。 三、完整性約束定義 1. 設有關系S、SC、C如下: S(sno, sname, age, sex, sdept) C(cno, cname, teacher) SC(sno, cno, score) 用SQL完成下列功能: (1)創(chuàng)建學生表S和課程表C(要求標明主碼) (2)創(chuàng)建選修課程情況表SC。(要求標明主碼、外碼及成績的范圍) . 創(chuàng)建關系S、SC、C CREATE TABLE S ( Sno CHAR(8) PRIMARY KEY, /*主碼約束*/ Sname CHAR(20) UNIQUE, /*唯一約束*/ Ssex CHAR(2) NOT NULL, /*非空約束*/ Sage SMALLINT, Sdept CHAR(20) ); CREATE TABLE C ( Cno CHAR(4) PRIMARY KEY, /*主碼約束*/ Cname CHAR(40) NOT NULL, Teacher CHAR(8) , ); CREATE TABLE SC ( Sno CHAR(8) REFERENCES S(Sno), /*外碼約束*/ Cno CHAR(4), Score SMALLINT CHECK(Score<=100), /*檢查約束*/ PRIMARY KEY (Sno,Cno), /*主碼約束*/ FOREIGN KEY (Cno) REFERENCES C(Cno) /*外碼約束*/ ); 2. 假設有下面兩個關系模式: 職工(職工號,姓名,年齡,進校時間,工資,部門號),其中職工號為主碼 部門(部門號,部門名稱,經(jīng)理名,電話),其中部門號為主碼 用SQL語言定義這兩個關系模式,要求在模式中完成以下完整性約束條件的定義: (1)定義每個模式的主碼 (2)定義參照完整性 (3)定義職工年齡不得超過60歲 ); 2. 創(chuàng)建關系部門、職工 CREATE TABLE 部門 ( 部門號 char(4) PRIMARY KEY, /*主碼*/ 部門名稱 char(20), 經(jīng)理名 char(8), 電話 char(11) ) CREATE TABLE 職工 ( 職工號 char(8) PRIMARY KEY, 姓名 char(8), 年齡 smallint CHECK(年齡<=60), 進校時間 date, 工資 numeric(10,2), 部門號 char(4) REFERENCES 部門(部門號) ) 第6章 一、選擇題 1. 關系數(shù)據(jù)庫規(guī)范化是為了解決關系數(shù)據(jù)庫中( B)的問題而引入的。 A.提高查詢速度 B.插入、刪除、更新異常和數(shù)據(jù)冗余 C.保證數(shù)據(jù)的安全性和完整性 D.恢復數(shù)據(jù)庫 2. 關系模式中每個分量都是不可分的數(shù)據(jù)項,則關系模式屬于( A) A. 1NF B. 2NF C. 3N D. BCNF 3. 若R∈2NF,則R的每個(B ) A.非主屬性部分依賴于碼 B.非主屬性完全依賴于碼 C.主屬性部分依賴于碼 D.主屬性完全依賴于碼 4. 消除了非主屬性對碼傳遞函數(shù)依賴的2NF的關系模式,必定屬于( C) A.1NF B.2NF C. 3NF D. BCNF 5. 關系模式中,滿足2NF的模式( B ) A.可能是1NF B.必定是1NF C.必定是3NF D.必定是BCNF 二、關系模式規(guī)范化 1. 設有關系模式: 選修(姓名,專業(yè),課程,任課教師,成績) 假設:每個學生在一個專業(yè)學習;每門課程有一個任課教師;每個學生選修的每門課程只有一個成績;姓名、課程無重名。 (1)請寫出選修關系中存在的基本函數(shù)依賴集。 (2)找出關系模式的候選碼,指出哪些是主屬性?那些是非主屬性。 (3)分析關系模式最高屬于第幾范式?為什么? (4)如果選修關系不屬于3NF,請將其分解為第3NF模式集。 關系模式: 選修(姓名,專業(yè),課程,任課教師,成績) (1)基本函數(shù)依賴包括: 姓名→專業(yè) 課程→任課教師 (姓名,課程)→專業(yè) 部分 (姓名,課程)→任課教師 部分 (姓名,課程)→成績 完全 (2)關系模式的碼為:(姓名,課程) 主屬性包括“姓名”和“課程”。 非主屬性包括“專業(yè)”,“任課教師”和“成績”。 (3)關系模式達到1NF,但未達到2NF。因為在關系模式中存在非主屬性“專業(yè)”和“任課教師”部分依賴于碼的現(xiàn)象。 (4)關系模式可分解為: 學生(姓名,專業(yè)) 課程(課程,任課教師) 成績(姓名,課程,成績) 2. 現(xiàn)有一個描述學生、課程以及選課信息的關系模式: SelectCourse(學號,姓名,年齡,課程名稱,成績,學分)。 其中:每個學生可選多門課程,每門課程只選一次;每個學生選修的每門課程有一個成績; 每門課程都規(guī)定一定的學分。 (1)請寫出SelectCourse關系中存在的基本函數(shù)依賴集。 (2)找出關系模式的候選碼。 (3)分析關系模式最高屬于第幾范式?為什么? (4)請將SelectCourse關系模式分解為第3NF模式集。 . 關系模式: SelectCourse(學號,姓名,年齡,課程名稱,成績,學分) (1)基本函數(shù)依賴包括: 學號→姓名 學號→年齡 課程名稱→學分 (學號,課程名稱)→成績 (學號,課程名稱)→姓名 (學號,課程名稱)→學分 (學號,課程名稱)→年齡 (2)關系模式的碼為:(姓名,課程名稱) (3)關系模式達到1NF,但未達到2NF。因為在關系模式中存在 “姓名”和“學分”等非主屬性部分依賴于碼的現(xiàn)象。 (4)關系模式可分解為: 學生(學號,姓名,年齡) 課程(課程名稱,學分) 選課(姓名,課程名稱,成績) 3. 假設某商業(yè)集團數(shù)據(jù)庫中有一關系模式R如下: R(商店編號,商品編號,數(shù)量,部門編號,負責人)。 如果規(guī)定: (1)每個商店的每種商品只在一個部門銷售。 (2)每個商店的每個部門只有一個負責人。 (3)每個商店的每種商品只有一個庫存量。 請回答下列問題: (1)寫出R關系中存在的基本函數(shù)依賴集。 (2)找出關系模式的候選碼。 (3)分析關系模式最高屬于第幾范式?為什么? (4)如果R不屬于3NF,請將R分解為第3NF模式集。 關系模式: R(商店編號,商品編號,數(shù)量,部門編號,負責人) (1)基本函數(shù)依賴包括: (商店編號,商品編號)→部門編號 (商店編號,部門編號)→負責人 (商店編號,商品編號)→數(shù)量 (2)關系模式的碼為:(商店編號,商品編號)) (3)關系模式達到2NF,因為在關系模式中不存在非主屬性部分依賴于碼的現(xiàn)象。但未達到3NF,因為在關系模式中存在非主屬性“負責人”傳遞依賴于碼的現(xiàn)象。 (4)關系模式可分解為: R1(商店編號,商品編號,數(shù)量,部門編號) R2(商店編號,部門編號,負責人) 第7章 一、選擇題 1. 在數(shù)據(jù)庫設計中,將E-R圖轉換為關系模式的過程屬于( B ) 。 A.需求分析階段 B.邏輯設計階段 C.概念設計階段 D.物理設計階段 2. 關系模式中,表示實體間M:N聯(lián)系是通過增加一個 ( B) A.屬性實現(xiàn) B.關系實現(xiàn) C.關系或一個屬性實現(xiàn) D.關系和一個屬性實現(xiàn) 3. 從E-R模型向關系模型轉換時,一個M:N的聯(lián)系轉換為一個關系模式,該關系模式的關鍵字是 ( C) A.M端實體的關鍵字 B.N端實體的關鍵字 C.M端實體的關鍵字與N端實體的關鍵字的組合 D.重新選取其它屬性 4. 在E-R模型中,如果有3個不同的實體型,2個M:N聯(lián)系,根據(jù)E-R模型轉換為關系模型的規(guī)則,轉換為關系的數(shù)目是。( C ) A.3 B.4 C.5 D.6 二、簡述題 1. 數(shù)據(jù)庫設計涉及哪些方面的技術和知識? 2. 數(shù)據(jù)庫設計包括哪幾個階段? 3. 建立E-R圖包括哪幾個步驟? 答案: 1. 數(shù)據(jù)庫設計涉及多方面的技術和知識,包括計算機的基礎知識、程序設計的方法和技巧、軟件工程的原理和方法、數(shù)據(jù)庫的基本知識、數(shù)據(jù)庫設計技術和應用領域的知識。 2. 數(shù)據(jù)庫設計包括需求分析、概念結構設計、邏輯結構設計、物理結構設計、數(shù)據(jù)庫實施和數(shù)據(jù)庫運行與維護六個階段。 3. 建立E-R圖的過程包括:(1)首先確定實體型,(2)確定聯(lián)系類型,(3)把實體型和聯(lián)系組合成E-R圖,(4)確定實體型和聯(lián)系的屬性。 三、數(shù)據(jù)庫設計 1. 某圖書館中圖書按類分別存放在多個書庫中,可供讀者借閱。每個書庫中有若干個管理員(這些管理員不再管理其它書庫)。請設計一個數(shù)據(jù)庫保存相關的信息。其中: (1) 書庫的屬性包括書庫編號、位置、面積等, 圖書的屬性包括書號、書名、出版社等,讀者的屬性包括讀者號、姓名、單位等,管理員的屬性包括職工編號、職工姓名等屬性;其它屬性請自己指定。 (2) 描述借閱關系的屬性包括借出日期和應還日期等 試畫出書庫、圖書、讀者、管理員及其聯(lián)系的E-R圖(要求注明相關屬性及聯(lián)系的類型), 并將其轉換成關系模式(要求注明主碼)。 (2)轉換為關系模式如下: 書庫(書庫編號,地址,面積) 職工(職工編號,姓名,年齡,書庫編號) 圖書(圖書編號,書名,作者,出版社,書庫編號) 讀者(讀者編號,姓名,單位) 借閱(圖書編號,讀者編號,借出日期,還書日期) 2. 假設一個部門的數(shù)據(jù)庫包括如下信息: 職工的信息:職工號、姓名、地址和所在部門。 部門的信息:部門名稱、經(jīng)理名、電話。 產(chǎn)品的信息:產(chǎn)品編號、產(chǎn)品名、價格、型號。 制造商的信息:廠稱、廠址、傳真。 另外還包括部門銷售產(chǎn)品的信息和制造商生產(chǎn)產(chǎn)品的信息。 試畫這個數(shù)據(jù)庫的E-R圖(要求注明相關屬性及聯(lián)系的類型), 并將其轉換成關系模式(要求注明主碼)。 數(shù)據(jù)庫E-R圖如下: )轉換為關系模式如下: 職工(職工號,姓名,地址,部門名稱) 部門(部門名稱,經(jīng)理,電話) 產(chǎn)品(產(chǎn)品編號,產(chǎn)品名,型號,單價) 銷售(部門名稱,產(chǎn)品編號,數(shù)量) 制造商(廠名,廠址,傳真) 生產(chǎn)(產(chǎn)品編號,廠名,數(shù)量)- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 數(shù)據(jù)庫系統(tǒng) 包括題目和答案 數(shù)據(jù)庫 系統(tǒng) 包括 題目 答案
裝配圖網(wǎng)所有資源均是用戶自行上傳分享,僅供網(wǎng)友學習交流,未經(jīng)上傳用戶書面授權,請勿作他用。
相關資源
更多
正為您匹配相似的精品文檔
鏈接地址:http://m.appdesigncorp.com/p-6553689.html