《第1學期《數(shù)據(jù)庫原理與應用》課程A卷》由會員分享,可在線閱讀,更多相關(guān)《第1學期《數(shù)據(jù)庫原理與應用》課程A卷(8頁珍藏版)》請在裝配圖網(wǎng)上搜索。
1、西北農(nóng)林科技大學本科課程考試試題(卷)
2013—2014學年第1學期《數(shù)據(jù)庫原理與應用》課程A卷
專業(yè)班級: 命題教師: 審題教師:
學生姓名: 學號: 考試成績:
一、單項選擇題(每小題2分,共20分) 得分: 分
1.一個關(guān)系只有一個( C )。
A.超碼
2、 B.候選碼 C.主碼 D.外碼
2.數(shù)據(jù)庫DB、數(shù)據(jù)庫系統(tǒng)DBS、數(shù)據(jù)庫管理系統(tǒng)DBMS三者之間的關(guān)系是( A )。
A.DBS包括DB和DBMS B.DBMS包括DB和DBS
C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS
3.關(guān)系數(shù)據(jù)庫規(guī)范化是為了解決關(guān)系數(shù)據(jù)庫中( C )等問題而引入的。
A.減少數(shù)據(jù)操作的復雜性 B.提高查詢速度
C.插入異常、刪除異常和數(shù)據(jù)冗余 D.數(shù)據(jù)的完整性
4.下列關(guān)于Oracle中觸發(fā)器的描述,
3、不正確的是( D )。
A.視圖上只能創(chuàng)建instead of類型的觸發(fā)器
B.觸發(fā)器不需要用戶調(diào)用執(zhí)行
C.利用觸發(fā)器可以實施更為復雜的完整性約束
D.一張表上只能創(chuàng)建一個觸發(fā)器
5.Oracle數(shù)據(jù)庫物理結(jié)構(gòu)包括三種文件,以下不屬于的是( B )。
A.數(shù)據(jù)文件 B.系統(tǒng)文件 C.控制文件 D.日志文件
6.當關(guān)系R和S作自然連接時,能夠把R和S原該舍棄的元組保留到結(jié)果關(guān)系中的操作是( A )。
A. 全外連接 B. 右外連接 C. 外部并 D. 左外連接
7.設有關(guān)系模式R(
4、A,B,C),F(xiàn)是R上成立的函數(shù)依賴集,F(xiàn)={A→B,C→B},則相對于F,關(guān)系模式R的主鍵為( A )。
A.AC B.ABC C.AB D.BC
8.在ER模型中,如果有6個不同實體集,有9個不同的二元聯(lián)系,其中3個1∶N聯(lián)系,3個1∶1聯(lián)系,3個M∶N聯(lián)系,根據(jù)ER模型轉(zhuǎn)換成關(guān)系模型的規(guī)則,轉(zhuǎn)換成關(guān)系的最少數(shù)目是( B )。
A.6 B.9 C.12 D.15
9.設計內(nèi)模式屬于數(shù)據(jù)庫設計的( D )。
A.需求設計
5、B.概念設計 C.邏輯設計 D.物理設計
10.一個事務內(nèi)部的操作及使用的數(shù)據(jù)對其他事務是( B )的,并發(fā)執(zhí)行的各個事務之間不能相互干擾。
A.一致 B.隔離 C.永久 D.原子
二、填空題(每空1分,共10分) 得分: 分
1.在Oracle中,當在表上創(chuàng)建主鍵約束(Primary Key)和 唯一性 約束時系統(tǒng)自動在相應的屬性列上創(chuàng)建索引(Index)。
2.在Oracle中創(chuàng)建用戶時,若未提及DEFAULT TABLESPAC
6、E關(guān)鍵字,則系統(tǒng)將 users 表空間分配給用戶作為默認表空間。
3.執(zhí)行授權(quán)語句Grant時如果指定了With Grant Option子句表示: 獲得權(quán)限的用戶可以傳播此權(quán)限 。
4.對于視圖的查詢和更新,系統(tǒng)最終轉(zhuǎn)化為對 基本表 的查詢和更新。
5.設R(U)是屬性集U上的關(guān)系模式。X,Y是U的子集。若對于R(U)的任意一個可能的關(guān)系r,r中不可能存在兩個元組 在x上的值相同,而在y上的值不同 ,則稱X函數(shù)確定Y或Y函數(shù)依賴于X,記作X→Y。
6.數(shù)據(jù)庫設計中,需求分析階段
7、產(chǎn)生的數(shù)據(jù)字典通常包括數(shù)據(jù)項、數(shù)據(jù)結(jié)構(gòu)、 數(shù)據(jù)流 、數(shù)據(jù)處理和 數(shù)據(jù)存儲 五個部分。
7.事務通常是以Begin Transaction開始,以 commit 或Rollback結(jié)束。
8.一個“不好”的關(guān)系模式會存在數(shù)據(jù)冗余太大、 刪除異常 、更新異樣、插入異常。
9.PL/SQL程序由三個塊組成,即聲明部分、 執(zhí)行部分 、異常處理部分。
三、簡答題(每小題5分,共20分) 得分: 分
1.什么是視圖?請列舉出使用視圖的優(yōu)點(列
8、出任意三點即可)。
1. 視圖是從一個或幾個基本表(或視圖)中導出的表。它與基本表不同,是一個虛表,數(shù)據(jù)庫中只存放視圖的定義,而不存放視圖對應的數(shù)據(jù),這些數(shù)據(jù)仍存放在原來的基本表中。視圖的優(yōu)點:(1)視圖能夠簡化用戶的操作;(2)視圖使用戶能以多種角度看待同一數(shù)據(jù);(3)視圖對重構(gòu)數(shù)據(jù)庫提供了一定程度的邏輯獨立性;(4)視圖能夠?qū)C密數(shù)據(jù)提供安全保護;(5)適當?shù)睦靡晥D可以更清晰的表達查詢。
2.簡述關(guān)系數(shù)據(jù)庫的三類完整性約束。
2. 關(guān)系數(shù)據(jù)庫的完整性約束包括:實體完整性、參照完整性和用戶自定義的完整性。實體完整性規(guī)則:若屬性(指一個或一組屬性)A是基本關(guān)系R的主屬性,則A不能取
9、空值。參照完整性規(guī)則:若屬性(或?qū)傩越M)F是基本關(guān)系R的外碼,它與基本關(guān)系S的主碼Ks相對應(基本關(guān)系R和S不一定是不同的關(guān)系),則對于R中每個元組在F上的值必須為:或者取空值;或者等于S中某個元組的主碼值。用戶自定義的完整性就是針對某一具體關(guān)系數(shù)據(jù)庫的約束條件。它反映某一具體應用所涉及的數(shù)據(jù)必須滿足的語義要求。
3.有一張學生基本信息表S(Sno,Sname,Ssex,Sbirth,Sdept,Major),表中存放某高校各個學院的學生信息,如果只允許數(shù)據(jù)庫用戶Jobs查詢“生命科學”學院的學生信息而不能查詢其它學院的學生信息,請給出相應的授權(quán)方案。
(1)創(chuàng)建“生命科學”學院視
10、圖
Create view shengming
As
Select sno,sname,ssex,sbirth,sdept,major
From s
Where sdept=‘生命科學’
(2)授權(quán)
Grant select on shengming to jobs;
4.簡述概念結(jié)構(gòu)階段的設計內(nèi)容與步驟。
設計內(nèi)容:將需求分析得到的用戶需求抽象為信息結(jié)構(gòu)即概念模型。步驟:第一步是抽象數(shù)據(jù)并設計局部視圖,第二步是集成局部視圖,得到全局的概念結(jié)構(gòu)。
四、設計題(每小題9分,共18分) 得分:
11、 分
1.有一圖書出版銷售系統(tǒng),其中的數(shù)據(jù)有:圖書的書號、書名及作者姓名;出版社名稱、地址及電話;書店名稱、地址及其經(jīng)理;倉庫號,面積,負責人。其中:
每種圖書只能由一家出版社出版,一家出版社可出版多種圖書;
每種圖書可由多家書店銷售,每家書店可經(jīng)銷多種圖書,用銷售量表示某種圖書在某個書店的銷售數(shù)量;
一個出版社出版的圖書存放在一個倉庫,一個倉庫可以存放若干個出版社出版的圖書,用庫存量表示某種圖書在某個倉庫中的數(shù)量。
(1)請畫出該系統(tǒng)數(shù)據(jù)庫的ER圖。(5分)
(2)將ER圖轉(zhuǎn)換成關(guān)系模式,要求關(guān)系模型的數(shù)量盡可能少。(4分)
12、
2.現(xiàn)有如下關(guān)系模式:
借閱(圖書編號,書名,作者名,出版社,讀者編號,讀者姓名,借閱日期,歸還日期)
基本函數(shù)依賴集F:
F={圖書編號→(書名,作者名,出版社),讀者編號→讀者姓名,(圖書編號,讀者編號,借閱日期)→歸還日期}
(1)寫出借閱關(guān)系的主碼,分析非主屬性對主碼的函數(shù)依賴。(5分)
(2)利用規(guī)范化理論對借閱關(guān)系進行分解,使分解后的每個關(guān)系模式達到3NF。(4分)
五、綜合題(共32分) 得分:
13、 分
1.設有關(guān)系模式如下:
部門(部門編號,部門名稱,電話)
員工(員工編號,姓名,性別,部門編號,職務)
項目(項目編號,項目名稱,預算)
施工(員工編號,項目編號,工時)注:工時的單位為小時
寫出下列操作的關(guān)系代數(shù):(每小題3分,共9分)
(1)查詢員工“陳艷”的部門名稱和職務;
(2)查詢工時超過100小時的項目名稱和員工的姓名。
(3)刪除部門編號為D4的部門信息。
2.現(xiàn)有如下關(guān)系:
職工(職工號,姓名,性別,職務,家庭地址,部門編號)
部門(部門編號,部門名稱,地址,電話)
保?。ū=】ň幪枺毠ぬ?,檢
14、查身體日期,健康狀況)
寫出下列操作的SQL語句:(每小題3分,共15分)
(1)查找所有女科長的姓名和家庭地址。
(2)統(tǒng)計“財務科”中健康狀況為“良好”的職工人數(shù)。
(3)統(tǒng)計身體檢查3次以上健康狀況都是“差”的職工號。
(4)將“研發(fā)部”職工的健康狀況改為“一般”。
(5)建立健康狀況為“差”的職工的視圖,視圖中包括職工號、姓名、性別、部門名稱、檢查身體日期、健康狀況。
3.補全下面的PL/SQL程序。(每空2分,共8分)
有三個關(guān)系S(Sno,Sn
15、ame,Ssex,Sage,Sdept),C(Cno,Cname,Ccredit),SC(Sno,Cno,Grade),創(chuàng)建存儲過程CJ_P,實現(xiàn)查詢指定學院學生的成績情況,在過程體中輸出學生的姓名、選課的課程名和成績。
create or replace procedure CJ_P(v_sdept )
is
v_sname s.sname%type;
v_cname ame%type;
v_grade sc.grade%type;
cursor c1 is select Sname, Cname,Grade
from
16、
where s.sno = sc.sno and o = o and Sdept = v_sdept;
begin
open c1;
loop
fetch ;
exit when c1%notfound;
dbms_output.put_line(v_sname||,||v_cname||,||v_grade);
end loop;
;
end;
第 8 頁 共 8 頁