




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、數(shù)據(jù)庫原理與技術(shù)課程復(fù)習(xí)資料一、名詞解釋:1.數(shù)據(jù)管理2.DB3.DBMS4.DBS5.RDBMS6.DBA7.ORDBMS8.SQL 9.關(guān)系10.關(guān)系模型11.關(guān)系系統(tǒng)12.完整性控制13.屬性14.2NF15.候選碼二、單項(xiàng)選擇題:1.任何由二個(gè)屬性組成的關(guān)系可能是 A.1NF B.2NF C.3NF D.不能判定2.數(shù)據(jù)冗余引起的問題主要是花費(fèi) A.時(shí)間 B.空間 C.時(shí)間與空間 D.時(shí)間或空間 3.在數(shù)據(jù)庫中,存儲(chǔ)冗余數(shù)據(jù)是 A.不應(yīng)該的 B.應(yīng)該且合理的 C.合理的但不能過度冗余 D.視情況而定4.在關(guān)系運(yùn)算中,進(jìn)行自然聯(lián)接運(yùn)算的兩個(gè)關(guān)系 A.必有相同的列名 B.必有相同的關(guān)鍵字
2、C.沒有要求 D.必有類型相同的列 5.在數(shù)據(jù)庫系統(tǒng)中,DBMS與DB 的關(guān)系是 A.DBMS包括DB B.DB 包括DBMS C.不一定的 D.同級關(guān)系 6.在SQL的查詢語句的WHERE子句中,下列哪個(gè)不能出現(xiàn)? A.sum B. != C.<> D.<= 7.關(guān)系模式 R,S具有共同的屬性X,且X是R的主碼,則X稱為S的 A.主碼 B.外碼 C.關(guān)鍵字 D.相對主碼 8.關(guān)系系統(tǒng)不會(huì)具有如下哪個(gè)特征? A.支持關(guān)系數(shù)據(jù)結(jié)構(gòu) B.支持關(guān)系數(shù)據(jù)操作 C.支持關(guān)系模型所有特征 D.支持表結(jié)構(gòu) 9.一個(gè)外部關(guān)鍵字的屬性可以 A.1 個(gè) B.不超過2個(gè) C.多個(gè) D.最多1個(gè) 1
3、0.設(shè)屬性組 X,Y,Z分別是m, n, k目的,則R(X,Y)÷S(Y,Z)是( )目的。 A. m B.n C. k D. m+n-k 11.數(shù)據(jù)庫與數(shù)據(jù)倉庫關(guān)系是 A.一個(gè)概念 B.包含關(guān)系 C.不一樣的概念 D.不確定的12.數(shù)據(jù)庫管理系統(tǒng)是一個(gè) A.軟件系統(tǒng) B.硬件系統(tǒng) C.軟硬件結(jié)合的系統(tǒng) D.數(shù)據(jù)集合 13.數(shù)據(jù)模型是( )數(shù)據(jù)特征的抽象。 A.計(jì)算機(jī)世界 B.現(xiàn)實(shí)世界 C.模型空間 D.概念世界 14.在SQL的查詢中,子查詢中( )返回多個(gè)記錄。 A.不能 B.能 C.不一定 D.能,但有限制 15.關(guān)系模式 R為3NF,則R不存在 A.部分依賴 B.傳遞依賴 C
4、.非主屬性對碼的傳遞依賴 D.主屬性對碼的傳遞依賴16.關(guān)系模式R為 2NF,則R不存在 A.部分依賴 B.傳遞依賴 C.非主屬性對碼的部分依賴 D.主屬性對碼的傳遞依賴17.關(guān)于關(guān)系數(shù)據(jù)庫的缺點(diǎn)是 A.結(jié)構(gòu)復(fù)雜 B.存取效率不高 C.操作復(fù)雜 D.操作語句難以理解與記憶18.關(guān)系R的實(shí)體完整性控制是指 A.主鍵非空 B.主鍵唯一 C.主鍵非空且唯一 D.主鍵非空或唯一三、判斷題:1.任何由二個(gè)屬性組成的關(guān)系不可能是 3NF。 2.數(shù)據(jù)冗余引起的問題主要是花費(fèi)空間。 3.DB設(shè)計(jì)中優(yōu)化設(shè)計(jì)的目標(biāo)是減少 DB設(shè)計(jì)時(shí)間。 4.在數(shù)據(jù)庫中,不應(yīng)該存儲(chǔ)任何冗余數(shù)據(jù)。 5.關(guān)系中的行、列均可交換。 6.
5、在關(guān)系統(tǒng)運(yùn)算中,進(jìn)行自然聯(lián)接運(yùn)算的兩個(gè)關(guān)系必須具有相同關(guān)鍵字。 7.在數(shù)據(jù)庫設(shè)計(jì)中,由分E-R圖生成總E-R圖,主要是消除結(jié)構(gòu)沖突與命名沖突。 8.關(guān)系代數(shù)運(yùn)算中,運(yùn)算對象為兩個(gè)關(guān)系的運(yùn)算有并、交、選擇、投影等。 9.常用的關(guān)系運(yùn)算是關(guān)系代數(shù)和邏輯演算。 10.在數(shù)據(jù)庫系統(tǒng)中,DBMS包括DBS和DB。 11.SQL的標(biāo)準(zhǔn)庫函數(shù) COUNT,SUM等是不允許直接出現(xiàn)在查詢語句中的。 12.數(shù)據(jù)庫具有數(shù)據(jù)結(jié)構(gòu)化、較小冗余、易于擴(kuò)充等特點(diǎn)。 13.數(shù)據(jù)模型包括數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)操作,完整性約束條件。 14.關(guān)系模式R,S具有共同的屬性 X,且X是R的主碼,則X稱為S的外部碼。 15.關(guān)系系統(tǒng)是支持關(guān)系
6、模型所有特征的系統(tǒng)。 16.一個(gè)外部關(guān)鍵字的屬性至多一個(gè)。 17.描述事物的符號記錄稱為數(shù)據(jù)。 18.數(shù)據(jù)庫也就是數(shù)據(jù)倉庫。 19.數(shù)據(jù)庫管理系統(tǒng)是一個(gè)軟件系統(tǒng)。 20.數(shù)據(jù)庫系統(tǒng)指軟件為主,不包括數(shù)據(jù)庫與用戶。 21.數(shù)據(jù)庫的數(shù)據(jù)控制功能包括安全性、并發(fā)、分布式控制等控制功能。 22.數(shù)據(jù)模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象。 23.在SQL的查詢中,子查詢中不能返回多個(gè)記錄,否則會(huì)出錯(cuò)。 24.關(guān)系數(shù)據(jù)庫存取效率不高。 四、填空題:1.關(guān)系代數(shù)運(yùn)算中,運(yùn)算對象為兩個(gè)關(guān)系的運(yùn)算有并、_、_等。2.常用的關(guān)系運(yùn)算是_與_。3.SQL的標(biāo)準(zhǔn)庫函數(shù)有SUM、_等,其中不允許直接出現(xiàn)在查詢Where子句中的
7、有SUM、_。4.數(shù)據(jù)模型包括數(shù)據(jù)結(jié)構(gòu)、_與_。5.數(shù)據(jù)庫系統(tǒng)包括計(jì)算機(jī)硬件、_、_等6.數(shù)據(jù)庫的數(shù)據(jù)控制功能包括安全性、_、_等控制功能。7.數(shù)據(jù)庫設(shè)計(jì)主要包括需求分析、_、_、運(yùn)行維護(hù)等步驟。8.數(shù)據(jù)庫系統(tǒng)主要包括關(guān)系、_、_等類型的系統(tǒng)。五、簡要回答以下問題:1.為什么說ORACLE10g是完備式關(guān)系系統(tǒng)?2.試比較文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別與聯(lián)系?六、關(guān)系代數(shù)與SQL綜合應(yīng)用。1.現(xiàn)有如下E-R圖, 1n員工單位有實(shí)體的主要屬性如下,其中下劃線部分為主碼:單位(編號、名稱、電話、地址、郵編、負(fù)責(zé)人員工號、)員工(員工號、姓名、年齡、性別、職稱職務(wù)、)試用SQL表示(即定義)上述E-R圖
8、所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以026-開頭且唯一,性別為“男”、“女”或“其它”,各字段的類型長度可以根據(jù)需要自己確定。在上述定義的每個(gè)表中輸入一個(gè)有代表性的記錄,體現(xiàn)相互間的聯(lián)系。用SQL與關(guān)系代數(shù)(兩者都要)表示:找出新開區(qū)規(guī)劃部的電話與職工號、姓名試用SQL表示查詢:找出姓名為“張一通”的員工編號與年齡刪除名稱為空值的單位。(2分)2.現(xiàn)有如下E-R圖:1n教職工學(xué)校有實(shí)體的主要屬性如下,其中下劃線部分為主碼:學(xué)校(編號、名稱、電話、)教職工(職工號、姓名、年齡、性別、職稱、)試用SQL表示(即定義)上述E-R圖所有的實(shí)
9、體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以0731-開頭且唯一,性別為“男”或“女”,各字段的類型長度可以根據(jù)需要自己確定。在上述定義的每個(gè)表中輸入一個(gè)有代表性的記錄,體現(xiàn)相互間的聯(lián)系。用SQL與關(guān)系代數(shù)(兩者都要)表示:(a)找出中南大學(xué)的電話與職工號、姓名試用SQL表示查詢:找出平均年齡小于45的學(xué)校編號與名稱、電話。刪除名稱為空值的學(xué)校。建立視圖表示關(guān)系(學(xué)校名稱、電話、職工號、姓名、年齡、性別)3.現(xiàn)有如下E-R圖:1n職工公司有實(shí)體的主要屬性如下,其中下劃線部分為主碼:公司(編號、名稱、電話、)職工(職工號、姓名、年齡、性別、)試用SQ
10、L表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以0731-開頭且唯一,年齡>=20,各字段的類型長度可以根據(jù)需要自己確定。 用SQL與關(guān)系代數(shù)(兩者都要)表示: (a)找出張茸芳的學(xué)號與年齡、性別試用SQL表示查詢: 找出平均年齡小于35的公司編號與名稱、電話。建立視圖表示關(guān)系(公司名稱、電話、職工號、姓名、年齡、性別)4.現(xiàn)有如下E-R圖:1n學(xué)生院系有實(shí)體的主要屬性如下,其中下劃線部分為主碼:院系(編號、名稱、電話、)學(xué)生(學(xué)號、姓名、年齡、性別、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中
11、實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以88開頭且唯一,年齡>=12,各字段的類型長度可以根據(jù)需要自己確定。用SQL與關(guān)系代數(shù)(兩者都要)表示: (a)找出信息學(xué)院的電話與學(xué)生學(xué)號、姓名建立視圖表示關(guān)系(院系名稱、電話、學(xué)號、姓名、年齡、性別)5.現(xiàn)有如下E-R圖:1n職工部門有實(shí)體的主要屬性如下,其中下劃線部分為主碼:部門(編號、名稱、電話、部門負(fù)責(zé)人號、)職工(職工號、姓名、年齡、性別、工資、津貼、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以0731-開頭,
12、年齡>=18,工資+津貼<=5000,各字段的類型長度可以根據(jù)需要自己確定。用SQL與關(guān)系代數(shù)(兩者都要)表示(a)找出職工王曉芳的職工號與年齡、性別試用SQL表示查詢: 找出平均工資大于3000的部門編號與名稱、電話。建立視圖表示關(guān)系(部門名稱、電話、職工號、姓名、年齡、性別)6.現(xiàn)有如下E-R圖:mp零件倉庫庫存庫存量實(shí)體的主要屬性如下,其中下劃線部分為主碼:倉庫(倉庫號、倉庫名、面積、貨位數(shù)、保管員,)零件(零件號、零件名稱、規(guī)格型號、計(jì)量單位、供貨商號、價(jià)格、)庫存(?,?,庫存量)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反
13、映主碼與聯(lián)系(外碼),價(jià)格在0到10萬之間,其中的類型長度可以根據(jù)需要確定。?,?處需要填上相應(yīng)的屬性。用SQL與關(guān)系代數(shù)表示查詢:a> 找出成品庫II(名)的倉庫號、面積、貨位數(shù)。試用SQL表示查詢:找出110110011號零件的所在的倉庫號,倉庫名,貨位數(shù)。七、關(guān)系數(shù)據(jù)庫設(shè)計(jì)綜合應(yīng)用。1.有一關(guān)系模式R(A、B、C、D),滿足的函數(shù)賴關(guān)系為F = A>C,AC>B, B>D (1)求關(guān)系模式的碼,并寫出求解過程。2.有一關(guān)系模式R(A、B、C、D),滿足的函數(shù)賴關(guān)系為F = AB>C,AC>B, AC>D,D>B (1)試判斷R的最高范式,并
14、說明理由。3.有一關(guān)系模式R(A、B、C、D、E),滿足的函數(shù)賴關(guān)系為F = A>BC, AD>E,B>D (1)求關(guān)系模式的碼,并寫出求解過程。4.有一關(guān)系模式R(A、B、C、D、E),滿足的函數(shù)賴關(guān)系為F = BàA, AàD, AàE, ADàC,BàD (1)試判斷R的最高范式,并說明理由。5.試證明:關(guān)系模式R為BCNF,則R一定為2NF。而關(guān)系模式R為2NF,則不一定為BCNF。6.有一關(guān)系模式R(A、B、C、D),滿足的函數(shù)賴關(guān)系為F = BàC, BDàA,DàC (1)求關(guān)系模式
15、的碼,并寫出求解過程。八、SQL編程綜合應(yīng)用。1.編寫程序:寫程序表示產(chǎn)生以1390731(7位)開頭的11位手機(jī)號,后4位都為數(shù)字,其中第末位不為4。要求將結(jié)果存入數(shù)據(jù)庫表中。2.編寫程序:編寫程序,表示如下要求:n個(gè)學(xué)生(可以不用輸入,固定一個(gè)數(shù)即可,如230),平均分成m個(gè)班(多余的人盡量平均放到前面的班),請產(chǎn)生學(xué)號,其中前四位為i305,第五位為班號如1,2分別表示1,2班,第6、7、8位表示序列號,第9位固定為5。要求將結(jié)果存入數(shù)據(jù)庫表中。3.編寫程序,并寫出程序運(yùn)行產(chǎn)生的最后一個(gè)結(jié)果。用PL/SQL編寫程序,表示產(chǎn)生以i6081開頭的第9位固定為3的6、7、8位不超過236的多個(gè)
16、學(xué)號。要求將結(jié)果存入數(shù)據(jù)庫表中。4.試編寫程序:用PL/SQL編寫程序,表示產(chǎn)生以09011開頭的第8位不為4而第9位固定為3的6、7、8位不超過136的多個(gè)學(xué)號。要求將結(jié)果存入數(shù)據(jù)庫表中。5.試編寫程序:產(chǎn)生以湘A-0開頭的兩位字母、兩位數(shù)字(如湘A-0AA99,湘A-0BB66,湘A-0SS77),的不少于200個(gè)的車牌號碼,其中要求尾數(shù)不為4,并要求存入數(shù)據(jù)庫表v_number(l_number varchar(20),Memo varchar(32)。6.試編寫程序:寫程序表示產(chǎn)生以888(3位)開頭的6位QQ號存入一個(gè)號碼表中,表中字段除號碼外,還有一個(gè)標(biāo)注字段。后3位都為數(shù)字,其中
17、末位一般不為4,但如果最后4位是444,則允許并標(biāo)注為”特別號”,號碼中尾數(shù)為6,7,8,9都需標(biāo)注為”幸運(yùn)號”。 要求將結(jié)果存入數(shù)據(jù)庫表中。假如已有表 QQ_number ,內(nèi)有字段qno char(11), spec char(8);數(shù)據(jù)庫原理與技術(shù)課程復(fù)習(xí)資料參考答案一、名詞解釋:1.數(shù)據(jù)管理:對數(shù)據(jù)進(jìn)行收集、存儲(chǔ)、檢索、維護(hù)、傳播等活動(dòng)的總和。是數(shù)據(jù)量發(fā)展到一定程度計(jì)算機(jī)管理的重點(diǎn)。2.DB:在DBMS的集成管理下,有較高的數(shù)據(jù)獨(dú)立性,有較少的冗余,相互間有文件的集成.如答案為:存儲(chǔ)數(shù)據(jù)的倉庫,給一半分,答:相互間有聯(lián)系的數(shù)據(jù)集成,給全分。3.DBMS:數(shù)據(jù)庫管理系統(tǒng),管理數(shù)據(jù)庫的軟件
18、系統(tǒng)。是有數(shù)據(jù)庫的計(jì)算機(jī)系統(tǒng)的中心管理軟件,一般依賴于操作系統(tǒng)。4.DBS:DBS:數(shù)據(jù)庫系統(tǒng)(1分),包括DB,DBMS與DBA的計(jì)算機(jī)系統(tǒng)。5.RDBMS:關(guān)系數(shù)據(jù)庫管理系統(tǒng),即以表來表示實(shí)體及其聯(lián)系的數(shù)據(jù)庫管理系統(tǒng),如典型的ORACEL,SQL SERVER等,現(xiàn)在流行的大型數(shù)據(jù)庫系統(tǒng)基本上都是RDBMS。6.DBA:數(shù)據(jù)庫管理員,負(fù)責(zé)對數(shù)據(jù)庫進(jìn)行管理、監(jiān)控、優(yōu)化操作的人員。7.ORDBMS:對象關(guān)系數(shù)據(jù)庫管理系統(tǒng),即在關(guān)系數(shù)據(jù)庫管理系統(tǒng)的基礎(chǔ)上,支持面向?qū)ο蟮奶攸c(diǎn),支持類型的定義與對象的定義,支持組合、引用、繼承等類型擴(kuò)充規(guī)則。8.SQL:結(jié)構(gòu)化查詢語言,現(xiàn)已成為為關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)查語
19、言,有ANSI與ISO標(biāo)準(zhǔn),還有SQL2 與SQL3兩種標(biāo)準(zhǔn)。9.關(guān)系:一組集合的笛卡爾乘積的子集,滿足某一特定地條件的集合。一般表示為表結(jié)構(gòu)。10.關(guān)系模型:用表來表示實(shí)體與實(shí)體間聯(lián)系的模型。11.關(guān)系系統(tǒng):支持表結(jié)構(gòu)、且支持選擇、投影、聯(lián)接等關(guān)系運(yùn)算而不依賴于物理路徑的系統(tǒng)。12.完整性控制:保證數(shù)據(jù)是正確有效相容的一種機(jī)制13.屬性:實(shí)體的某一特性或特征,常用來描述實(shí)體。14.3NF:關(guān)系模式中所有非主屬性都是非傳遞依賴于碼的,或:關(guān)系模式R中不存在任何非主屬性傳遞依賴于任意一個(gè)碼,則稱R為3NF。15.候選碼:關(guān)系的屬性或?qū)傩约?,能唯一?biāo)識整個(gè)關(guān)系,但沒有真子集(比其?。┠軜?biāo)識關(guān)系。或
20、者關(guān)系的屬性或?qū)傩约芡耆珱Q定關(guān)系的全部屬性。二、單項(xiàng)選擇題:1.C 2.C 3.C 4.D 5.D 6.A 7.B 8.C 9.C 10.A 11.C 12.A 13.A 14.D 15.D 16.C 17.B 18.A三、判斷題:1.× 2.× 3.× 4.× 5. 6.× 7. 8.× 9.× 10.×11.× 12. 13. 14. 15.× 16.× 17. 18.× 19. 20.×21.× 22.× 23.× 24.四、填
21、空題:1.關(guān)系代數(shù)運(yùn)算中,運(yùn)算對象為兩個(gè)關(guān)系的運(yùn)算有并、_交_、_差_、_除_、_聯(lián)接_等。2.常用的關(guān)系運(yùn)算是_關(guān)系代數(shù)_與_關(guān)系演算_。3.SQL的標(biāo)準(zhǔn)庫函數(shù)有_SUM_、_AVG_、_MAX_等,其中不允許直接出現(xiàn)在查詢Where子句中的有_SUM_、_AVG_。4.數(shù)據(jù)模型包括數(shù)據(jù)結(jié)構(gòu)、_數(shù)據(jù)操作_與_完整性約束條件_。5.數(shù)據(jù)庫系統(tǒng)包括計(jì)算機(jī)硬件、_數(shù)據(jù)庫管理系統(tǒng)等軟件,數(shù)據(jù)庫,DBA等人員_等。6.數(shù)據(jù)庫的數(shù)據(jù)控制功能包括安全性、_完整性,并發(fā)_等控制功能。_等,用于數(shù)據(jù)庫應(yīng)用系統(tǒng)的開發(fā)工具主要有VB、_ PB, Delphi_等。7.數(shù)據(jù)庫設(shè)計(jì)主要包括需求分析、_概念設(shè)計(jì),邏輯設(shè)
22、計(jì),物理設(shè)計(jì)(編碼調(diào)試)_、運(yùn)行維護(hù)等步驟。8.數(shù)據(jù)庫系統(tǒng)主要包括關(guān)系、_層次,網(wǎng)狀(面向?qū)ο螅等類型的系統(tǒng)。五、簡要回答以下問題:1.為什么說ORACLE10g是完備式關(guān)系系統(tǒng)?答:首先ORACLE是關(guān)系系統(tǒng),因?yàn)镺RACLE支持SQL,支持表結(jié)構(gòu),支持選擇、投影、聯(lián)接而不依賴于任務(wù)物理路徑。其次,在ORACLE中,支持完整性操作如實(shí)體完整性用PRIMARY KEY來定義、參照完整性用外鍵來定義,用戶自定義完整性用CHECK或TRIGGER來定義。2.試比較文件系統(tǒng)與數(shù)據(jù)庫系統(tǒng)的區(qū)別與聯(lián)系?聯(lián)系:數(shù)據(jù)庫系統(tǒng)也是文件系統(tǒng),因?yàn)閿?shù)據(jù)庫最終是通過操作系統(tǒng)讀取的,以文件為最終組織形式。區(qū)別:數(shù)據(jù)庫
23、是有組織的、冗余小的,相互有聯(lián)系的文件的集合,而文件系統(tǒng)中,文件一般沒有聯(lián)系,冗余問題也較少考慮。六、關(guān)系代數(shù)與SQL綜合應(yīng)用。1.現(xiàn)有如下E-R圖:1n員工單位有實(shí)體的主要屬性如下,其中下劃線部分為主碼:單位(編號、名稱、電話、地址、郵編、負(fù)責(zé)人員工號、)員工(員工號、姓名、年齡、性別、職稱職務(wù)、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以026-開頭且唯一,性別為“男”、“女”或“其它”,各字段的類型長度可以根據(jù)需要自己確定。答案:create table dept(dno char(6) prim
24、ary key, dname varchar(32), tel char(12) check( substr(tel, 1,4) = 026-),add varchar2(32),post char(6); create table emp(eno char(7) primary key, ename char(8), age number(2), sex char(2) check(SEX in (男,女,其它), title varchar2(12),dno char(6) references dept (dno) alter table dept add manager_no char
25、(7) references emp(eno)在上述定義的每個(gè)表中輸入一個(gè)有代表性的記錄,體現(xiàn)相互間的聯(lián)系。insert into dept values(110011,新開區(qū)規(guī)劃部湖南長沙星沙開元路16號,410061,null);insert into emp values(1101101, 張一通,26,男,科長,110011);用SQL與關(guān)系代數(shù)(兩者都要)表示: 找出新開區(qū)規(guī)劃部的電話與職工號、姓名select tel, eno, enamefrom dept, emp where dept.dno=emp.dno and dname=新開區(qū)規(guī)劃部;tel
26、,eno,ename (dname=新開區(qū)規(guī)劃部(dept)|´|emp )試用SQL表示查詢: 找出姓名為“張一通”的員工編號與年齡select eno, agefrom emp where ename=張一通;刪除名稱為空值的單位。Delete from dept where dname is null;2.現(xiàn)有如下E-R圖, 1n教職工學(xué)校有實(shí)體的主要屬性如下,其中下劃線部分為主碼:學(xué)校(編號、名稱、電話、)教職工(職工號、姓名、年齡、性別、職稱、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電
27、話以0731-開頭且唯一,性別為“男”或“女”,各字段的類型長度可以根據(jù)需要自己確定。create table university(uno char(6) primary key,uname varchar(32),tel char(12) check substr(tel,1,4)=0731-);create table emp(empno char(8) primary key, ename char(8), age number(2) check(age>=20), sex char(2) check(sex in 男,女), title varchar2(8), uno cha
28、r(6) references university(uno)在上述定義的每個(gè)表中輸入一個(gè)有代表性的記錄,體現(xiàn)相互間的聯(lián)系。insert into university values(110101, 中南大學(xué);insert into emp values(303111, 歐陽正菁,22, 女,講師,110101);用SQL與關(guān)系代數(shù)(兩者都要)表示: (1)找出中南大學(xué)的電話與職工號、姓名select empno,ename from emp where uno in (select uno from university where uname =中南大學(xué)empn
29、o,age (uname=中南大學(xué)(university)|´|emp)試用SQL表示查詢: 找出平均年齡小于45的學(xué)校編號與名稱、電話。Select uno, uname, tel from university where uno in (select uno from emp having avg(age)<45 groupp by35 group by uno)刪除名稱為空值的學(xué)校。delete from university where uname is null;建立視圖表示關(guān)系(學(xué)校名稱、電話、職工號、姓名、年齡、性別)create view uniemp(學(xué)校名
30、稱、電話、職工號、姓名、年齡、性別) asselect uname,tel,empno,ename,age,sex from university,empwhere university.uno=emp.uno;3.現(xiàn)有如下E-R圖: 1n職工公司有實(shí)體的主要屬性如下,其中下劃線部分為主碼:公司(編號、名稱、電話、)職工(職工號、姓名、年齡、性別、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以0731-開頭且唯一,年齡>=20,各字段的類型長度可以根據(jù)需要自己確定。create table corp
31、oration(cno char(6) primary key,cname varchar(32),tel char(12) check substr(tel,1,4)=0731-);create table emp(empno char(8) primary key,ename char(8),age number(2) check(age>=20), sex char(2),cno char(6) references corporation(cno)用SQL與關(guān)系代數(shù)(兩者都要)表示: 找出張柟芳的學(xué)號與年齡、性別select empno,age,sex from emp wher
32、e ename= 張柟芳empsno,age,sex (ename=張柟芳(emp) )試用SQL表示查詢: 找出平均學(xué)生年齡大于35的公司編號與名稱、電話。Select cno, cname, tel from corporation where cno in (select cno from emp having avg(age)>35 group by cno, empno)建立視圖表示關(guān)系(公司名稱、電話、職工號、姓名、年齡、性別)create view sd_stud(公司名稱、電話、職工號、姓名、年齡、性別)as select cname,tel,empno,ename,ag
33、e,sexfrom corporation,emp where o=emp.empno)4.現(xiàn)有如下E-R圖:1n學(xué)生院系有實(shí)體的主要屬性如下,其中下劃線部分為主碼:院系(編號、名稱、電話、)學(xué)生(學(xué)號、姓名、年齡、性別、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以88開頭且唯一,年齡>=12,各字段的類型長度可以根據(jù)需要自己確定。create table school_dept(sdno char(4) primary key,sdname varchar(32),tel char(7) che
34、ck substr(tel,1,2)=88);create table stud(sno char(8) primary key,sname char(8),age number(2) check(age>=12), sex char(2),sdno char(4) references school_dept(cno)用SQL與關(guān)系代數(shù)(兩者都要)表示: 找出信息學(xué)院的電話與學(xué)生學(xué)號、姓名select sno,sname from stud where sdno in (select sdno from school_dept where sdname = 信息學(xué)院sno,age (s
35、dname=信息學(xué)院(school_dept)|´|stud )試用SQL表示查詢: 找出平均學(xué)生年齡大于21的院系編號與名稱、電話。Select sdno, sdname, tel from school_dept where sno in (select sno from stud having avg(age)>21 group by sdno,sno)5.現(xiàn)有如下E-R圖: 1n職工部門有實(shí)體的主要屬性如下,其中下劃線部分為主碼:部門(編號、名稱、電話、部門負(fù)責(zé)人號、)職工(職工號、姓名、年齡、性別、工資、津貼、)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其
36、中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(一定要表示聯(lián)系),其中電話以0731-開頭,年齡>=18,工資+津貼<=5000,各字段的類型長度可以根據(jù)需要自己確定。create table dept(dno char(4) primary key,dname varchar(32), tel char(12) check( substr(tel, 1,5) = 0731-) create table emp(eno char(7) primary key,ename char(8),age number(2) check(age>=18),sex char(2), sa
37、l number(10,2),comm. Number(10,2) , dno char(4) references dept (dno), check(sal+comm.)<=5000) 用SQL與關(guān)系代數(shù)(兩者都要)表示: 找出職工李芳芳的職工號與年齡、性別select eno, age, sex from emp where ename=李芳芳eno, age, sex (ename=李芳芳(emp) )試用SQL表示查詢: 找出平均工資大于2000的部門編號與名稱、電話。Select dno,dname,tel from dept where dno in (select dno
38、 from emp having avg(sal)>2000 group by dno);建立視圖表示關(guān)系(部門名稱、電話、職工號、姓名、年齡、性別)create view dept_emp(部門名稱、電話、職工號、姓名、年齡、性別) as select dname,tel,eno,ename,age,sex from emp,dept where emp.dno=dept.dno6.現(xiàn)有如下E-R圖:mp零件倉庫庫存庫存量實(shí)體的主要屬性如下,其中下劃線部分為主碼:倉庫(倉庫號、倉庫名、面積、貨位數(shù)、保管員,)零件(零件號、零件名稱、規(guī)格型號、計(jì)量單位、供貨商號、價(jià)格、)庫存(?,?,庫
39、存量)試用SQL表示(即定義)上述E-R圖所有的實(shí)體及聯(lián)系,其中實(shí)體只需表示列出的主要屬性,要求反映主碼與聯(lián)系(外碼),價(jià)格在0到10萬之間,其中的類型長度可以根據(jù)需要確定。?,?處需要填上相應(yīng)的屬性。用SQL與關(guān)系代數(shù)表示查詢:a> 找出成品庫II(名)的倉庫號、面積、貨位數(shù)。試用SQL表示查詢: 找出110110011號零件的所在的倉庫號,倉庫名,貨位數(shù)。解:(1)?處分別填倉庫號,零件號Create table warehouse(wno char(4) primary key, wname varchar2(32), size number(8,2), l_num number(
40、8),eno char(7) references emp(eno),emp_name char(8)Create table part(pno char(9) primary key, pname varchar2(32), p-size varchar2(32), cust_no char(7), p_price number(10,2) check(p_price between 0 and 100000)Create table store(wno char(4) references warehouse.wno, pno char(9) references part.pno, nu
41、m number(12,2)用SQL與關(guān)系代數(shù)表示查詢: a> 找出成品庫II號倉庫的倉庫號、面積、貨位數(shù)。select wno, size, l_num from warehouse where wno=成品庫IIwno,size_l_num(wname=成品庫II(warehouse) )試用SQL表示查詢: 找出110110011號零件的所在的倉庫號,倉庫名,貨位數(shù)。Select wno, wname, sum(l_num) from warehouse where wno in (select wno from store where pno= 110110011);七、關(guān)系數(shù)據(jù)
42、庫設(shè)計(jì)綜合應(yīng)用。1.由已知條件可知:函數(shù)關(guān)系的右屬性不包含A,所以碼中必包含A易知A能推出所有其它屬性,所以A是碼可知R的碼有A2.因?yàn)椴淮嬖诜侵鲗傩?,所以R為3NF,但有D>B,所以R不為BCNF。3.求關(guān)系模式的碼, 并寫出求解過程解:在F中的右邊沒有B,則R的碼一定含有B,又BF+ =B,A,D,E,C, 所以R的碼為B且只有B4.因?yàn)橛蠦àC,而C為非主屬性,則R不為2NF,即R的最高范式為1NF.5.證明:第一部分,采用反證法,假定R不為2NF,則一定存在非主屬性對碼的部分依賴,即如碼X,非主屬性Y,則一定存在X真包含于X,有XàY,由于X不為碼,Y為非主屬
43、性,YàX,所以R不為BCNF。第二部分,可以通過舉例說明,R為2NF,而R不為BCNF。 6.解:在F中的右邊沒有B,所以R的碼一定含有B,又:BF+=B,C,即B不為R的碼考慮B與其它屬性的組合, ABF+=A,B,C;BCF+=A,B,C; BDF+=B,C,D,A;知BD為碼又ABCF+=A,B,C,所以R的碼只有BD一個(gè)八、SQL編程綜合應(yīng)用。1.編寫程序:編寫程序產(chǎn)生以1390731(7位)開頭的11位手機(jī)號,要求末位不為4。提示:程序結(jié)構(gòu)為: DECLARE 變量定義 BEGIN 程序體 END;DECLARE BH :NUMBER= 10000; PH CHAR(4)
44、;BEGIN while BH< =19999 LOOPIf mod(BH,10)<>4) then INSERT INTO temp_table (BH)select 139073|to_char(BH) from dual; BH :=BH + 1; end loop;END;2.編寫程序:編寫程序,表示如下要求:n個(gè)學(xué)生(可以不用輸入,固定一個(gè)數(shù)即可,如230),平均分成m個(gè)班(多余的人盡量平均放到前面的班),請產(chǎn)生學(xué)號,其中前四位為i305,第五位為班號如,分別表示,班,第、8位表示序列號,第9位固定為5。要求將結(jié)果存入數(shù)據(jù)庫表中。參考答案:/*首先需要有輸入語句輸入
45、n與m ,也可以直接在程序中指定*/DECLARE BH,k, j, k1 number:= 1;BEGIN k:=int(n,m); /* 學(xué)生數(shù)除班數(shù)取整,即平均每個(gè)班多少人 */ j:=mod(n,m); /* 學(xué)生除班數(shù)取整后的余數(shù),即平均到每個(gè)班后還剩下多少人 */For i=1.m loopIf i<=j then k1:=k+1; /* 前面j個(gè)班都會(huì)多出一個(gè)學(xué)生 */elsek1:=k; /* 班號大于j的學(xué)生數(shù)為平均數(shù)k */End if; While BH<=k1 LOOPIf BH <10 then INSERT INTO temp_table (sno
46、)select i305|to_char(i)|00|to_char(BH)|5 from dual;Else if BH>=100 thenINSERT INTO temp_table (sno)select i305|to_char(i)|to_char(BH)|5 from dual;else INSERT INTO temp_table (sno)select i305|to_char(i)|0|to_char(BH)|5 from dual;end if;end if; BH :=BH + 1; end loop;end loop;END;3.編寫程序,并寫出程序運(yùn)行產(chǎn)生的最后
47、一個(gè)結(jié)果。用PL/SQL編寫程序,表示產(chǎn)生以i6081開頭的第9位固定為3的6、7、8位不超過236的多個(gè)學(xué)號。答案DECLARE v_LC number:= 1;V_no number;BEGIN while v_LC< =236 LOOPv_no:=1000+v_lc;INSERT INTO temp_table (sno)Select i608|to_char(v_no)|3 from dual; v_LC := v_LC + 1; end loop;END;最后一個(gè)結(jié)果是:i60812363。4.編程題:用PL/SQL編寫程序,表示產(chǎn)生以09011開頭的第8位不為4而第9位固定為3的6、7、8位不超過136的多個(gè)學(xué)號。要求將結(jié)果存入數(shù)據(jù)庫表中。DECLARE v_LC numb
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 顱腦手術(shù)麻醉管理
- 甘肅省古浪縣重點(diǎn)名校2023-2024學(xué)年畢業(yè)升學(xué)考試模擬卷數(shù)學(xué)卷含解析
- 2025年企業(yè)安全培訓(xùn)考試試題答案新
- 2025車間職工安全培訓(xùn)考試試題有答案
- 2024-2025工廠車間安全培訓(xùn)考試試題及參考答案【達(dá)標(biāo)題】
- 2025年工廠安全培訓(xùn)考試試題及參考答案(綜合題)
- 2025年車間職工安全培訓(xùn)考試試題A卷
- 25年公司廠級安全培訓(xùn)考試試題附答案(考試直接用)
- 2025年中國撇纜繩行業(yè)市場運(yùn)行格局及投資前景預(yù)測分析報(bào)告
- 2025年新進(jìn)廠職工安全培訓(xùn)考試試題及答案(各地真題)
- 2025年護(hù)士執(zhí)業(yè)資格考試題庫:護(hù)理教育與培訓(xùn)新生兒護(hù)理試題集
- 2025至2031年中國電機(jī)芯片行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025年學(xué)校五一跨學(xué)科主題實(shí)踐活動(dòng)方案
- 2024年華中科技大學(xué)招聘職員筆試真題
- 1號卷·A10聯(lián)盟2025屆高三4月質(zhì)檢考物理試題及答案
- 美國加州租房合同范本(2篇)
- 建筑物理聲復(fù)習(xí)歸納總結(jié)
- 有限空間作業(yè)風(fēng)險(xiǎn)告知卡(常用可編輯)
- 尾礦庫培訓(xùn)教材
- 暖氣管道安裝施工方案(實(shí)用資料)
- 中國詩詞協(xié)會(huì)入會(huì)申請表
評論
0/150
提交評論