【正文】
每個學生可參加若干學會,每個學會有若干學生。 全碼:整個屬性組是碼,稱為全碼(Allkey)。由上面的定義可以知道,如果X→Y,則r中任意兩個元組,若它們在X上的屬性值相同,那么在Y上的屬性值一定也相同。 A. 1NF B. 2NF C. 3NF D. BCNF (3)現(xiàn)將關(guān)系模式A分解為兩個關(guān)系模式A1(C,T),A2(H,R,S),則其中A1的規(guī)范化程度達到( )。 A. 1NF B. 2NF C. 3NF D. BCNF 27. 設(shè)有關(guān)系模式R(S,D,M),其函數(shù)依賴集:F={S→D,D→M},則關(guān)系模式R的規(guī)范化程度最高達到( )。下面關(guān)于多值依賴的敘述中,不正確的是( )。 A. 多個 B. 0個 C. 1個 D. 1個或多個 12. 關(guān)系模式的任何屬性( ) 。 B. BE D. DE 4. 設(shè)學生關(guān)系S(SNO,SNAME,SSEX,SAGE,SDPART)的主鍵為SNO,學生選課關(guān)系SC(SNO,CNO,SCORE)的主鍵為SNO和CNO,則關(guān)系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主鍵為SNO和CNO,其滿足( )。 CREATE TABLE EMP (Empno NUMBER(4), Ename VARCHAR(10), Age NUMBER(2), CONSTRAINT C1 CHECK (Age《=60), Job VARCHAR(9), Sal NUMBER(7,2), Deptno NUMBER(2), CONSTRAINT FK_DEPTNO FOREIGN KEY (Deptno) REFERENCES DEPT(Deptno)); 7.關(guān)系系統(tǒng)中,當操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時,一般是如何分別進行處理的? 答: 對于違反實體完整性和用戶定義的完整性的操作一般都采用拒絕執(zhí)行的方式進行處理。 3). 違約反應(yīng):如果發(fā)現(xiàn)用戶的操作請求使數(shù)據(jù)違背了完整性約束條件,則采取一定的動作來保證數(shù)據(jù)的完整性。 靜態(tài)關(guān)系約束是在一個關(guān)系的各個元組之間或者若干關(guān)系之間常常存在各種聯(lián)系或約束。 ??? 答:數(shù)據(jù)的完整性和安全性是兩個不同的概念,但是有一定的聯(lián)系。但是,人們可以從合法的查詢中推導出不合法的信息,即可能存在隱蔽的信息通道,這是統(tǒng)計數(shù)據(jù)庫要研究和解決的特殊的安全性問題。 客體是系統(tǒng)中的被動實體,是受主體操縱的,包括文件、基表、索引、視圖等。 (d) 用戶劉星對職工表有SELECT權(quán)力,對工資字段具有更新權(quán)力; GRANT SELECT,UPDATE(工資) ON 職工 TO 劉星; (e) 用戶張新具有修改這兩個表的結(jié)構(gòu)的權(quán)力; GRANT ALTER TABLE ON 職工,部門 TO 張新; (f) 用戶周平具有對兩個表所有權(quán)力(讀,插,改,刪數(shù)據(jù)),并具有給其他用戶授權(quán)的權(quán)力; GRANT ALL PRIVILIGES ON 職工,部門 TO 周平 WITH GRANT OPTION; (g) 用戶楊蘭具有從每個部門職工中SELECT最高工資,最低工資,平均工資的權(quán)力,他不能查看每個人的工資。 (自主存取控制)的語句?請試舉幾例說明它們的使用方法。 5)數(shù)據(jù)加密:對存儲和傳輸?shù)臄?shù)據(jù)進行加密處理,從而使得不知道解密算法的人無法獲知數(shù)據(jù)的內(nèi)容。只是在數(shù)據(jù)庫系統(tǒng)中大量數(shù)據(jù)集中存放,而且為許多最終用戶直接共享,從而使安全性問題更為突出。 SELECT PNO, QTY /* S1供應(yīng)三建工程的零件號和對應(yīng)的數(shù)量*/ FROM V_SPJ WHERE SNO=39。針對該視圖完成下列查詢: (1)找出三建工程項目使用的各種零件代碼及其數(shù)量。 9. 哪類視圖是可以更新的,哪類視圖是不可更新的? 各舉一例說明。 答:(1)視圖能夠簡化用戶的操作。 INSERT INTO SPJ(SNO, JNO, PNO, QTY) VALUES (S2,J6,P4,200)。P639。 (9) 由S5供給J4的零件P6改為由S3供應(yīng),請作必要的修改。)。 SELECT DISTINCT PNO FROM SPJ WHERE SNO IN (SELECT SNO FROM S WHERE CITY=39。 (2) 找出所有零件的名稱、顏色、重量。 (6)找出使用上海產(chǎn)的零件的工程名稱。S139。 2. 試述SQL的定義功能。 ?。?)高度非過程化。要查詢選修“數(shù)據(jù)庫”課的全體男生姓名的SQL語句是SELECT SNAME FROM S,C,SC WHERE子句。 A. = and = and SAGE=20 and CNAME=‘ACCESS’ B. = and = and SAGE in=20 and CNAME in ‘ACCESS’ C. SAGE in=20 and CNAME in ‘ACCESS’ D. SAGE=20 and CNAME=’ ACCESS’ 12. 設(shè)關(guān)系數(shù)據(jù)庫中一個表S的結(jié)構(gòu)為S(SN,CN,grade),其中SN為學生名,CN為課程名,二者均為字符型;grade為成績,數(shù)值型,取值范圍0-100。 A. CREATE TABLE B. DROP VIEW C. CREATE VIEW D. GRANT 8. 若要撤銷數(shù)據(jù)庫中已經(jīng)存在的表S,可用( )。 第三章 關(guān)系數(shù)據(jù)庫標準語言SQL 一、選擇題 1. SQL語言是( )的語言,容易學習 。 E1 =πA (σ B=C ∧ D=E′ (RS) ) E2 =πA (σ B=C (R σD=E′ (S) ) E3 =πA (R∞B=CσD=E′(S) ) E3 =πA (σD=E′ (R∞B=C S) ) A. E3最快 B. E2最快 C. E4最快 D. E1最快 19. 有關(guān)系SC(S_ID,C_ID,AGE,SCORE),查找年齡大于22歲的學生的學號和分數(shù),正確的關(guān)系代數(shù)表達式是( ) 。 B. 抽出特定字段 D. 建立相應(yīng)的圖形 12. 從一個數(shù)據(jù)庫文件中取出滿足某個條件的所有記錄形成一個新的數(shù)據(jù)庫文件的操作是( )操作 。 4. 現(xiàn)有如下關(guān)系: 患者(患者編號,患者姓名,性別,出生日起,所在單位) 醫(yī)療(患者編號,患者姓名,醫(yī)生編號,醫(yī)生姓名,診斷日期,診斷結(jié)果) 其中,醫(yī)療關(guān)系中的外碼是( )。 概念模型用于信息世界的建模,是現(xiàn)實世界到信息世界的第一層抽象,是數(shù)據(jù)庫設(shè)計人員進行數(shù)據(jù)庫設(shè)計的有力工具,也是數(shù)據(jù)庫設(shè)計人員和用戶之間進行交流的語言。同學們必須通過《概論》的學習真正掌握 數(shù)據(jù)模型的概念和作用。 數(shù)據(jù)模型是數(shù)據(jù)庫中用來對現(xiàn)實世界進行抽象的工具,是數(shù)據(jù)庫中用于提供信息表示和操作手段的形式構(gòu)架。為此,DBMS必須提供統(tǒng)一的數(shù)據(jù)控制功能,包括數(shù)據(jù)的安全性保護,數(shù)據(jù)的完整性檢查,并發(fā)控制和數(shù)據(jù)庫恢復。 我們可以取整體數(shù)據(jù)的各種子集用于不同的應(yīng)用系統(tǒng),當應(yīng)用需求改變或增加時,只要重新選取不同的子集或加上一部分數(shù)據(jù)便可以滿足新的需求。而在文件系統(tǒng)中,數(shù)據(jù)的存取單位只有一個:記錄。如一個工廠的管理信息系統(tǒng)(其中會包括許多子系統(tǒng),如庫存管理系統(tǒng)、物資采購系統(tǒng)、作業(yè)調(diào)度系統(tǒng)、設(shè)備管理系統(tǒng)、人事管理系統(tǒng)等等),還比如學校的學生管理系統(tǒng),人事管理系統(tǒng),圖書館的圖書管理系統(tǒng)等等都適合用數(shù)據(jù)庫系統(tǒng)。所以在DBMS實現(xiàn)中數(shù)據(jù)庫物理組織的基本問題是如何利用或如何選擇操作系統(tǒng)提供的基本的文件組織方法。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的聯(lián)系是: 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)都是計算機系統(tǒng)中管理數(shù)據(jù)的軟件。 使用數(shù)據(jù)庫系統(tǒng)可以減輕數(shù)據(jù)庫系統(tǒng)管理人員維護系統(tǒng)的負擔。 為什么有這些好處,可以結(jié)合第5題來回答。用于科學地組織和存儲數(shù)據(jù)、高效地獲取和維護數(shù)據(jù)。 數(shù)據(jù)庫系統(tǒng): 數(shù)據(jù)庫系統(tǒng)(DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)構(gòu)成。 數(shù)據(jù)與其語義是不可分的。 B. 物理模式 C. 子模式 D. 內(nèi)模式 ?。?)不是DBA數(shù)據(jù)庫管理員的職責 。 A. 系統(tǒng)分析員 B. 程序員 C. 數(shù)據(jù)庫管理員 D. 操作員 2. 數(shù)據(jù)庫(DB),數(shù)據(jù)庫系統(tǒng)(DBS)和數(shù)據(jù)庫管理系統(tǒng)(DBMS)之間的關(guān)系是( )。 A. 模式 B. 內(nèi)模式 C. 外模式 D. 用戶模式 7. 要保證數(shù)據(jù)庫的數(shù)據(jù)獨立性,需要修改的是( ) 。 *解析: 在現(xiàn)代計算機系統(tǒng)中數(shù)據(jù)的概念是廣義的。 *解析: 簡單地講,數(shù)據(jù)數(shù)據(jù)庫數(shù)據(jù)具有永久儲存、有組織和可共享三個特點。希望讀者能夠從人們講話或文章的上下文中區(qū)分“數(shù)據(jù)庫系統(tǒng)”和“數(shù)據(jù)庫”。著名的有美國IBM公司的DB2關(guān)系數(shù)據(jù)庫管理系統(tǒng)、IMS層次數(shù)據(jù)庫管理系統(tǒng);美國ORACLE公司的ORACLE關(guān)系數(shù)據(jù)庫管理系統(tǒng);SYBASE公司的SYBASE關(guān)系數(shù)據(jù)庫管理系統(tǒng);美國微軟公司的SQL SERVER關(guān)系數(shù)據(jù)庫管理系統(tǒng)等等。 還有,當應(yīng)用邏輯改變,數(shù)據(jù)的邏輯結(jié)構(gòu)需要改變時,由于數(shù)據(jù)庫系統(tǒng)提供了數(shù)據(jù)與程序之間的獨立性。 文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別: 文件系統(tǒng)面向某一應(yīng)用程序,共享性差、冗余度大,獨立性差,紀錄內(nèi)有結(jié)構(gòu)、整體無結(jié)構(gòu),應(yīng)用程序自己控制。或者說,讀者進一步學習數(shù)據(jù)庫管理系統(tǒng)實現(xiàn)的有關(guān)課程(第十一章只是DBMS實現(xiàn)技術(shù)的概述)后可以對本題有深入的理解和全面的解答。 早期功能比較簡單、比較固定的應(yīng)用系統(tǒng)也適合用文件系統(tǒng)。在數(shù)據(jù)庫系統(tǒng)中,數(shù)據(jù)不再針對某一個應(yīng)用,而是面向全組織,具有整體的結(jié)構(gòu)化。 所謂“數(shù)據(jù)面向某個應(yīng)用”是指數(shù)據(jù)結(jié)構(gòu)是針對某個應(yīng)用設(shè)計的,只被這個應(yīng)用程序或應(yīng)用系統(tǒng)使用。即數(shù)據(jù)的邏輯結(jié)構(gòu)或物理結(jié)構(gòu)改變了,程序不會跟著改變。 數(shù)據(jù)庫系統(tǒng)的出現(xiàn)使信息系統(tǒng)從以加工數(shù)據(jù)的程序為中心轉(zhuǎn)向圍繞共享的數(shù)據(jù)庫為中心的新階段。 ?、跀?shù)據(jù)操作:是指對數(shù)據(jù)庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關(guān)的操作規(guī)則,是對系統(tǒng)動態(tài)特性的描述。一般需要有嚴格的形式化定義和一組嚴格定義了語法和語義的語言,并有一些規(guī)定和限制,便于在機器上實現(xiàn)。 碼:唯一標識實體的屬性集稱為碼。 第二章 關(guān)系數(shù)據(jù)庫 一、選擇題 1. 下面的選項不是關(guān)系數(shù)據(jù)庫基本特征的是( )。 A. 排序、索引、統(tǒng)計 B. 選擇、投影、連接 C. 關(guān)聯(lián)、更新、排序 D. 顯示、打印、制表 9. 五種基本關(guān)系代數(shù)運算是( )。 ∩S B. R∪S C. R-S D. RS 16. 假設(shè)有關(guān)系R和S,關(guān)系代數(shù)表達式R-(R-S)表示的是( )。 4. 定義并理解下列術(shù)語,說明它們之間的聯(lián)系與區(qū)別: (1)域,笛卡爾積,關(guān)系,元組,屬性 (2)主碼,候選碼,外碼 (3)關(guān)系模式,關(guān)系,關(guān)系數(shù)據(jù)庫 5. 試述關(guān)系模型的完整性規(guī)則。 A. 數(shù)據(jù)查詢 B. 數(shù)據(jù)操縱 C. 數(shù)據(jù)定義 D. 數(shù)據(jù)控制 5. SQL語言中,刪除一個視圖的命令是( )。其中S#是學生號,SNAME是學生姓名,SAGE是學生年齡, C#是課程號,CNAME是課程名稱。 A. 返回單表中數(shù)據(jù)子集的查詢語言 B. 選取多表中字段子集的查詢語句 C. 選取單表中字段子集的查詢語句 D. 嵌入到另一個查詢語句之中的查詢語句 15. SQL是一種( )語言。 A. S B. S,SC C. C,SC D. S,C,SC 選擇題答案: (1) B (2) A (3) C (4) C (5) B (6) A (7) D (8) C (9) C (10) B (11) A (12) D (13) A (14) D (15) C (16) A (17) B (18) D 二、簡答題 1. 試述SQL語言的特點。SQL語言既是自含式語言,又是嵌入式語言。 答: (1) 求供應(yīng)工程J1零件的供應(yīng)商號碼SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’; ?。?) 求供應(yīng)工程J1零件P1的供應(yīng)商號碼SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’ AND PNO=‘P1’; ?。?) 求供應(yīng)工程J1零件為紅色的供應(yīng)商號碼SNO; SELECT SNO FROM SPJ WHERE JNO=‘J1’ AND PNO IN (SELECT PNO FROM P WHERE COLOR=‘紅’); 或 SELECT SNO FROM SPJ,P WHERE JNO=‘J1’ AND = AND COLOR=‘紅’; ?。?) 求沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號JNO; 解析: 用SQL語言表示如下: SELECT JNO FROM J WHERE NOT EXISTS (SELECT * FROM SPJ WHERE =