數(shù)據(jù)庫原理
要求:
一、 獨(dú)立完成,下面已將五組題目列出,請按照學(xué)院平臺指定的做題組數(shù)作答,每人只答一組題目,多答無效,更多答案下載:(www.)100分;
平臺查看做題組數(shù)操作:學(xué)生登錄學(xué)院平臺→系統(tǒng)登錄→學(xué)生登錄→課程考試→離線考核→離線考核課程查看→做題組數(shù),顯示的數(shù)字為此次離線考核所應(yīng)做哪一組題的標(biāo)識;
例如:“做題組數(shù)”標(biāo)為1,代表學(xué)生應(yīng)作答“第一組”試題;
二、答題步驟:
1. 使用A4紙打印學(xué)院指定答題紙(答題紙請?jiān)斠姼郊?br/>2. 在答題紙上使用黑色水筆按題目要求手寫作答;答題紙上全部信息要求手寫,包括學(xué)號、姓名等基本信息和答題內(nèi)容,請寫明題型、題號;
三、提交方式:請將作答完成后的整頁答題紙以圖片形式依次粘貼在一個(gè)Word
文檔中上傳(只粘貼部分內(nèi)容的圖片不給分),圖片請保持正向、清晰;
1. 完成的作業(yè)應(yīng)另存為保存類型是“Word97-2003”提交;
2. 上傳文件命名為“中心-學(xué)號-姓名-科目.doc”;
3. 文件容量大?。翰坏贸^20MB。
提示:未按要求作答題目的作業(yè)及雷同作業(yè),成績以0分記!
題目如下:
第一組:
一、 SQL語句編寫題(每題25分,共50分)
(一)編寫SQL語句
1.設(shè)有職工基本表:EMP(ENO,ENAME,AGE,SEX,SALARY),
其屬性分別表示職工號、姓名、年齡、性別、工資。為每個(gè)工資低于1000元的女職工加薪200元,試寫出這個(gè)操作的SQL語句。
2. 設(shè)某工廠數(shù)據(jù)庫中有兩個(gè)基本表:
車間基本表:DEPT(DNO,DNAME,MGR_ENO),其屬性分別表示車間編號、車間名和車間主任的職工號。
職工基本表:ERP(ENO,ENAME,AGE,SEX,SALARY,DNO),其屬性分別表示職工號、姓名、年齡、性別、工資和所在車間的編號。
建立一個(gè)有關(guān)女車間主任的職工號和姓名的視圖,其結(jié)構(gòu)如下: VIEW6(ENO,ENAME)。試寫出創(chuàng)建該視圖VIEW6的SQL語句。
3. 設(shè)有一個(gè)工程供應(yīng)數(shù)據(jù)庫系統(tǒng),包括如下四個(gè)關(guān)系模式:
? S(SNO,SNAME, STATUS,CITY); ?
P(PNO,PNAME,COLOR,WEIGHT); ?
J(JNO,JNAME,CITY);
? SPJ(SNO,PNO,JNO,QTY);
供應(yīng)商表S由供應(yīng)商號、供應(yīng)商名、狀態(tài)、城市組成; 零件表P 由零件號、零件名、顏色、重量組成; 工程項(xiàng)目表J由項(xiàng)目號、項(xiàng)目名、城市組成;
供應(yīng)情況表SPJ由供應(yīng)商號、零件號、項(xiàng)目號、供應(yīng)數(shù)量組成;
(1)用關(guān)系代數(shù)查詢沒有使用天津供應(yīng)商生產(chǎn)的紅色零件的工程號;
(2) 用關(guān)系代數(shù)查詢至少使用了供應(yīng)商S1所供應(yīng)的全部零件的工程號JNO;
(3)用SQL查詢供應(yīng)工程J1零件為紅色的工程號JNO;
(4)用SQL查詢沒有使用天津供應(yīng)商生產(chǎn)的零件的工程號;
(5)用SQL語句將全部紅色零件改為藍(lán)色;
(6) 用SQL語句將(S2,P4,J6,400)插入供應(yīng)情況關(guān)系。
(二)編寫SQL語句
1. 設(shè)有學(xué)生選課關(guān)系SC(學(xué)號,課程號,成績),試用SQL語句檢索
每門課程的最高分。
2. 關(guān)系模式如下:
商品P(PNO,PN,COLOR,PRICE) 商店S(SNO;SN,CITY) 銷售SP(PNO,SNO,QTY)
分別用關(guān)系代數(shù)和SQL寫出查詢語句:查詢銷售商品"TV”的商店名SN。
SP必須書寫在S、P之間
3. 設(shè)有關(guān)系R和S如下圖所示。
試用SQL語句實(shí)現(xiàn):
(1)查詢屬性C>50時(shí),R中與相關(guān)聯(lián)的屬性B之值。
(2)當(dāng)屬性C=40時(shí),將R中與之相關(guān)聯(lián)的屬性B值修改為b4。
4. 設(shè)有關(guān)系R和函數(shù)依賴F:
R(W,X,Y,Z),F(xiàn) = { X→Z,WX→Y }。 試求下列問題:
(1)關(guān)系R屬于第幾范式?
(2)如果關(guān)系R不屬于BCNF,請將關(guān)系R逐步分解為BCNF。
要求:寫出達(dá)到每一級范式的分解過程,并指明消除什么類型的函數(shù)依賴。
二、 解答題(每題25分,共50分)
(一)解答題
1. 設(shè)T1,T2,T3是如下三個(gè)事務(wù),其中R為數(shù)據(jù)庫中某個(gè)數(shù)據(jù)項(xiàng),設(shè)R的初值為0。
T1: R:=R+5
T2: R:=R*3
T3: R:=2
若允許三個(gè)事務(wù)并行執(zhí)行,試列出所有可能的正確結(jié)果。采用什么手段,可以解決并行調(diào)度的不一致問題?
2. 在關(guān)系模式R(U,F(xiàn))中,U=ABCDEF={A→C,AC→B,B→D,C→E,EC→B} 計(jì)算(AB)+ 。
3.簡述數(shù)據(jù)庫概念模型的主要特點(diǎn)。
4. 簡述在SQL中,DELETE語句與DROP TABLE的區(qū)別。
DELETE的作用是刪除表中的元組,表的模式依然存在,而DROP TABLE 是將表的結(jié)構(gòu)和元組全部刪除,表被刪除(DROP)后就不再存在了。
(二)解答題
設(shè)有如下信息:下列E-R圖是反映產(chǎn)品與倉庫兩實(shí)體間聯(lián)系的信息模型,要求
(1)給出該E-R圖的關(guān)系數(shù)據(jù)庫模式,并指出相應(yīng)的關(guān)鍵字。
(2)若倉庫號、倉庫名及倉庫地均為字符型且長度均為10,用SQL語言為倉庫關(guān)系建立相應(yīng)的基表并說明實(shí)體完整性規(guī)則。
(3)將倉庫基表的查詢權(quán)限授予所有用戶,收回User3對倉庫的查詢權(quán)限。
第二組:
一、 SQL語句編寫題(每題25分,共50分)
(一)編寫SQL語句
對于教學(xué)數(shù)據(jù)庫的三個(gè)基本表
學(xué)生 S(S#,SNAME,AGE,SEX)
學(xué)習(xí) SC(S#,C#,GRADE)
課程 C(C#,CNAME,TEACHER)
試用SQL語句表示:檢索Liu同學(xué)學(xué)的課程號。
(二)編寫SQL語句
設(shè)有關(guān)系模式:Employees(ssn, name, sex, age, department)
其中:ssn為員工號,name為姓名,sex為性別,age為年齡,department為工作部門。
①用SQL語句的數(shù)據(jù)定義語句,建立Employees表。其中員工號不能為空且其值是唯一的。
②用SQL語句的插入語句,將一名新員工的員工信息進(jìn)行記錄
(員工號:07216008,姓名:笑笑,性別:女,年齡:24,所在部門:CS)。
③用SQL語句的修改語句,將員工笑笑的年齡改為26。
④用SQL語句的查詢語句,查詢?nèi)w員工的姓名、性別和所在的部門。
⑤用SQL語句的控制語句,把對Employees表的查詢權(quán)限授予用戶simon。
二、 解答題(每題25分,共50分)
(一)解答題
學(xué)生運(yùn)動會模型:
(1)有若干班級,每個(gè)班級包括: 班級號,班級名,專業(yè),人數(shù)
(2)每個(gè)班級有若干運(yùn)動員,運(yùn)動員只能屬于一個(gè)班,包括:運(yùn)動員號,姓名,性別,年齡
(3)有若干比賽項(xiàng)目,包括:項(xiàng)目號,名稱,比賽地點(diǎn)
(4)每名運(yùn)動員可參加多項(xiàng)比賽,每個(gè)項(xiàng)目可有多人參加
(5)要求能夠公布每個(gè)比賽項(xiàng)目的運(yùn)動員名次與成績
(6)要求能夠公布各個(gè)班級團(tuán)體總分的名次和成績
解題要求:
(1)畫出每個(gè)實(shí)體及其屬性關(guān)系、實(shí)體間實(shí)體聯(lián)系的E-R圖.
(2)根據(jù)試題中的處理要求:完成數(shù)據(jù)庫邏輯模型,包括各個(gè)表的名稱和屬性.并指出每個(gè)表的主鍵和外鍵。
(二)解答題
1、設(shè)有關(guān)系R與S
R: A B C
2 3 4
4 5 6
7 8 9 S: D E
7 5
4 8
計(jì)算 π3,2(R), σA=D(R×S)
2、設(shè)有兩個(gè)基本表R(A,B,C)和S(A,B,C)
試用SQL查詢語句表達(dá)下列關(guān)系代數(shù)表達(dá)式:
(1) R-S(2)πA,B(R) πB,C(S)
第三組:
一、SQL語句編寫題(每題25分,共50分)
(一) 編寫SQL語句
設(shè)有如下4個(gè)關(guān)系模式:
S(SN,SNAME,CITY)
P(PN,PNAME,COLOR,WEIGHT)
J(JN,JNAME,CITY)
SPJ(SN,PN,JN,QTY)
其中:S表示供應(yīng)商,SN為供應(yīng)商編碼,SNAME為供應(yīng)商名字,CITY為供應(yīng)商所在城市;P表示零件,PN為零件編碼,PNAME為零件名字,COLOR為零件顏色,WEIGHT為零件重量;J表示工程,JN為工程編碼,JNAME為工程名字,CITY為工程所在城市;SPJ表示供應(yīng)關(guān)系,QTY表示提供的零件數(shù)量。
寫出實(shí)現(xiàn)以下各題功能的SQL語句:
(1) 取出所有工程的全部細(xì)節(jié)。
(2) 取出所在城市為南京的所有工程的全部細(xì)節(jié)。
(3) 取出為所在城市為上海的工程提供零件的供應(yīng)商編碼。
(4) 取出為所在城市為上?;虮本┑墓こ烫峁┘t色零件的供應(yīng)商編碼。
(5) 取出供應(yīng)商與工程所在城市相同的供應(yīng)商提供的零件編碼。
(6) 取出至少由一個(gè)和工程不在同一城市的供應(yīng)商提供零件的工程編碼。
(7) 取出上海供應(yīng)商不提供任何零件的工程編碼。
(8) 取出所有這樣的一些<CITY,CITY>二元組,使得第1個(gè)城市的供應(yīng)商為第2個(gè)城市的工程提供零件。
(二) 編寫SQL語句
以下給出三個(gè)基本表:
Student(學(xué)生表)的字段按順序?yàn)閷W(xué)號、姓名、性別、年齡、所屬院系;
Course(課程表)的字段按順序?yàn)檎n程編號、課程名、先行課程、課程學(xué)分;
SC(選課表)的字段按順序?yàn)閷W(xué)號、課程號、成績。
各表的記錄如下:
1. 查詢與“劉晨”在同一個(gè)系學(xué)習(xí)的學(xué)生的學(xué)號、學(xué)生姓名。
2. 將一個(gè)新學(xué)生記錄(03020;陳冬;男;18;IS)插入Student表中。
3. 將計(jì)算機(jī)科學(xué)系(CS)全體學(xué)生的成績置零。
4. 創(chuàng)建信息系(IS)選修了1號課程的學(xué)生的視圖IS_S1,字段包括Sno、Sname、Grade。
二、解答題(每題25分,共50分)
(一) 解答題
1.設(shè)有關(guān)系模型R(A,B,C,D,E),F(xiàn)是R上成立的函數(shù)依賴集,F(xiàn)={ABC→DE,BC→D,D→E}, 試問R達(dá)到第幾范式,并說明理由。
2.設(shè)有關(guān)系R與S
R: A B C
2 3 4
4 5 6
7 8 9 S: D E
7 5
4 8
計(jì)算T
3. 設(shè)銷售數(shù)據(jù)模型如下:
廠家 S (SNO,SNAME,CITY )
產(chǎn)品 P (PNO,PNAME,COLOR,WEIGHT)
工程 J (JNO,JNAME,CITY)
銷售 SPJ (SNO,PNO,JNO,QTY)
用SQL完成查詢:與“長風(fēng)”在同一城市的廠家名。
(二) 解答題
有一個(gè)應(yīng)用,包括三個(gè)實(shí)體集。 實(shí)體類型“商店”的屬性有:商店編號,店名,店址,店經(jīng)理。 實(shí)體類型“會員”的屬性有:會員編號,會員名,地址。 實(shí)體類型“職工”的屬性有:職工編號,職工名,性別,工資 。 每家商店有若干職工,但每個(gè)職工只能服務(wù)于一家商店。 每家商店有若干會員,每個(gè)會員可以屬于多家商店。在聯(lián)系中應(yīng)反映出職工參加某商店工作的開始時(shí)間,會員的加入時(shí)間?! ?
(1)試畫出反映商店、職工、會員實(shí)體類型及聯(lián)系類型的ER圖;
(2)將ER圖轉(zhuǎn)換成關(guān)系模式,并指出每個(gè)表的主鍵和外鍵;
(3)指出以上關(guān)系模式所達(dá)到的范式。
第四組:
一、 SQL語句編寫題(每題25分,共50分)
(一) 編寫SQL語句
對于教學(xué)數(shù)據(jù)庫的三個(gè)基本表
學(xué)生 S(S#,SNAME,AGE,SEX)
學(xué)習(xí) SC(S#,C#,GRADE)
課程 C(C#,CNAME,TEACHER)
試用SQL語句表示:檢索Liu同學(xué)學(xué)的課程號。
(二) 編寫SQL語句
建立一個(gè)學(xué)生關(guān)系表Student,表中有5個(gè)字段:學(xué)號Sno(字符型)、姓名Sname(字符型)、性別Sex(字符型)、年齡Age(整型)、系別Dept(字符型),其中Sno是關(guān)系的碼;建立一個(gè)學(xué)生選課關(guān)系表SC,表中有3個(gè)字段:學(xué)號Sno(字符型)、課程號Cno(字符型)、成績Grade(數(shù)值型),其中Sno、Cno是關(guān)系的碼,用SQL語言完成下列功能:
① 建立學(xué)生關(guān)系表Student和學(xué)生選課關(guān)系表SC。
② 查詢計(jì)算機(jī)系(’CS’)所有同學(xué)的姓名和各科成績。
③ 添加一個(gè)學(xué)生記錄,學(xué)號為20020003,姓名為吳剛,性別為男,年齡為19歲,所在系為計(jì)算機(jī)系。
④ 邏輯刪除李江同學(xué)的相關(guān)記錄。
二、 解答題(每題25分,共50分)
(一) 解答題
學(xué)生運(yùn)動會模型:
(1)有若干班級,每個(gè)班級包括: 班級號,班級名,專業(yè),人數(shù)
(2)每個(gè)班級有若干運(yùn)動員,運(yùn)動員只能屬于一個(gè)班,包括:運(yùn)動員號,姓名,性別,年齡
(3)有若干比賽項(xiàng)目,包括:項(xiàng)目號,名稱,比賽地點(diǎn)
(4)每名運(yùn)動員可參加多項(xiàng)比賽,每個(gè)項(xiàng)目可有多人參加
(5)要求能夠公布每個(gè)比賽項(xiàng)目的運(yùn)動員名次與成績
(6)要求能夠公布各個(gè)班級團(tuán)體總分的名次和成績
解題要求:
(1)畫出每個(gè)實(shí)體及其屬性關(guān)系、實(shí)體間實(shí)體聯(lián)系的E-R圖.
(2)根據(jù)試題中的處理要求:完成數(shù)據(jù)庫邏輯模型,包括各個(gè)表的名稱和屬性.并指出每個(gè)表的主鍵和外鍵。
(二) 解答題
根據(jù)3NF的定義及規(guī)范化方法,對關(guān)系模式R(U,F(xiàn))
U={學(xué)號,姓名,所在系,系主任,課程號,成績}
F={學(xué)號→姓名,學(xué)號→所在系,所在系→系主任(學(xué)號,課程號)→成績}進(jìn)行分解。使其滿足3NF。
第五組:
一、 SQL語句編寫題(每題25分,共50分)
(一)編寫SQL語句
以下各小題題基于教學(xué)數(shù)據(jù)庫的三個(gè)基本表
學(xué)生 S(S#,SNAME,AGE,SEX)
學(xué)習(xí) SC(S#,C#,GRADE)
課程 C(C#,CNAME,TEACHER)
1. 試用元組表達(dá)式和關(guān)系代數(shù)表達(dá)式表示下列查詢語句:檢索年齡小于23歲的男同學(xué)的姓名和學(xué)號。
2. 試用SQL的查詢語句表達(dá)下列查詢: 檢索"王蘭"同學(xué)不學(xué)的課程的課程號。
3. 試用SQL的查詢語句表達(dá)下列查詢: 檢索全部學(xué)生都選修的課程的課程號與課程名。
4. 試用SQL更新語句表達(dá)以下更新操作: 把低于總平均成績的女同學(xué)成績提5%。
(二)編寫SQL語句
設(shè)有如下4個(gè)關(guān)系模式:
S(SN,SNAME,CITY)
P(PN,PNAME,COLOR,WEIGHT)
J(JN,JNAME,CITY)
SPJ(SN,PN,JN,QTY)
其中:S表示供應(yīng)商,SN為供應(yīng)商編碼,SNAME為供應(yīng)商名字,CITY為供應(yīng)商所在城市;P表示零件,PN為零件編碼,PNAME為零件名字,COLOR為零件顏色,WEIGHT為零件重量;J表示工程,JN為工程編碼,JNAME為工程名字,CITY為工程所在城市;SPJ表示供應(yīng)關(guān)系,QTY表示提供的零件數(shù)量。
寫出實(shí)現(xiàn)以下各題功能的SQL語句:
(1) 取出所有工程的全部細(xì)節(jié)。
(2) 取出所在城市為南京的所有工程的全部細(xì)節(jié)。
(3) 取出為所在城市為上海的工程提供零件的供應(yīng)商編碼。
(4) 取出為所在城市為上?;虮本┑墓こ烫峁┘t色零件的供應(yīng)商編碼。
(5) 取出供應(yīng)商與工程所在城市相同的供應(yīng)商提供的零件編碼。
(6) 取出至少由一個(gè)和工程不在同一城市的供應(yīng)商提供零件的工程編碼。
(7) 取出上海供應(yīng)商不提供任何零件的工程編碼。
(8) 取出所有這樣的一些<CITY,CITY>二元組,使得第1個(gè)城市的供應(yīng)商為第2個(gè)城市的工程提供零件。
二、 解答題(每題25分,共50分)
(一)解答題
東方貨運(yùn)公司數(shù)據(jù)庫的樣本數(shù)據(jù)如下。
表名稱:卡車
車號 貨運(yùn)站編號 類型 總行程 購入日期
1001 501 1 59002.7 11/06/90
1002 502 2 54523.8 11/08/90
1003 501 2 32116.6 09/29/91
1004 502 2 3256.9 01/14/92
表名稱:貨運(yùn)站
貨運(yùn)編號 地址 電話 經(jīng)理
501 北京市東城區(qū)花市大街111號 010―67301234 何東海
502 北京市海淀花園路101號 010―64248892 吳明君
表名稱:型號
類型 汽車型號
1 DJS130
2 DLS121
根據(jù)數(shù)據(jù)庫的表結(jié)構(gòu)和內(nèi)容:
a. 指出每個(gè)表的主碼和外碼。如果沒有外碼,則寫“無”。
b. 卡車表存在實(shí)體完整性和參照完整性嗎?請?jiān)敿?xì)說明。
c 具體說明卡車表與運(yùn)貨站表之間存在著什么關(guān)系?
d.卡車表中包含多少個(gè)實(shí)體?
(二)解答題
1.設(shè)有關(guān)系模型R(A,B,C,D,E),F(xiàn)是R上成立的函數(shù)依賴集,F(xiàn)={ABC→DE,BC→D,D→E}, 試問R達(dá)到第幾范式,并說明理由。
2.設(shè)有關(guān)系R與S
R: A B C
2 3 4
4 5 6
7 8 9 S: D E
7 5
4 8
計(jì)算T
3. 設(shè)銷售數(shù)據(jù)模型如下:
廠家 S (SNO,SNAME,CITY )
產(chǎn)品 P (PNO,PNAME,COLOR,WEIGHT)
工程 J (JNO,JNAME,CITY)
銷售 SPJ (SNO,PNO,JNO,QTY)
用SQL完成查詢:與“長風(fēng)”在同一城市的廠家名。