2015計算機三級數據庫技術練習題和答案(2)
8[填空題]在SQL Server 2008中,只具有修改數據庫中全部用戶表數據權限的系統角色是【9】。
參考解析:
db_datawriter
【解析】數據庫角色是被命名的一組與數據庫操作的相關的權限,角色是權限的集合。因此,可以為一組具有相同權限的用戶創建一個角色,使用角色來管理數據庫權限可以簡化授權的過程。SQL提供了9個內置的角色,以便在數據庫級別授予用戶特殊的權限集合,如下表:db OWIler具有在數據庫中執行任何操作的權限,包括配置、維護數據庫及刪除數據庫
db accessadmin該角色的成員可以從數據庫中增加或者刪除用戶的權限
db_backupoperator該角色的成員允許備份數據庫、備份日志的權限
db_datareader具有查詢數據庫中所有用戶數據的權限
db_datawriter具有插入、刪除和更新數據庫中所有用戶的權限
db_ddladmin具有執行數據定義語言的權限
db_denydatareader不允許具有查詢數據庫中所有用戶數據的權限
db_denydatawriter不具有插入、刪除和修改數據庫中所有用戶數據的權限
db_securityadmin具有管理數據庫角色、角色成員以及數據庫中語句和對象的權限
public默認角色
9[簡答題]設某教學管理系統,其查詢模塊需要提供如下功能:
?、?查詢系信息,列出各系編號、系名和系辦公電話;
Ⅱ.查詢某系教師的信息,列出教師號、教師名、工資和聘用日期;
?、?查詢某教師講授的課程信息,列出課程號、課程名和學分;
?、?查詢講授某門課程的教師信息,列出教師名和職稱;
V.查詢某門課程的先修課程信息,列出先修課程號和先修課程名。
系統有如下業務規則:
Ⅰ.一個系可聘用多名教師,一名教師只能受聘于一個系;
?、?一名教師可講授多門課程,一門課程可由多名教師講授;
?、?一門課程可以有多門先修課程,也可以沒有先修課程。
(1)請根據以上查詢功能與業務規則,用ER圖描述該系統的概念模型。
(2)將ER圖轉換為滿足3NF的關系模式,并說明每個關系模式的主碼和外碼。
參考解析:
(1)E-R圖也稱實體一聯系圖,提供了表示實體類型、屬性和聯系的方法,用來描述現實世界的概念模型。為了簡化E-R圖的處置,現實世界的事物能作為屬性對待的則盡量作為屬性對待。實體與屬性的劃分給出如下兩條規則:①作為“屬性”,不能再具有需要描述的性質,“屬性”必須是不可分的數據項,不能包含其它屬性。②“屬性”不能與其它實體有聯系,即E-R圖中所表示的聯系是實體之問的聯系。本題中一個系可以聘用多名教師,一名教師只能受聘于一個系,所以系實體與教師實體有聯系;一名教師可以講授多門課程,一門課程可由多名教師講授,所以教師實體與課程實體有聯系,一門課程可以有多門先修課程,所以課程間也有聯系。
【參考答案】
(2)要想使轉換生成的關系模式滿足3NF,則必須滿足關系模式中每一個非主屬性既不部分依賴于碼也不傳遞依賴于碼。
【參考答案】
系(系編號,系名,系辦公電話),無外碼
教師(教師號,教師名,工資,聘用日期,職稱,系編號),外碼:系編號
課程(課程號,課程名,學分,教師號),外碼:教師號
先修(先修課程號,先修課程名,課程號),外碼:課程號
10[簡答題]設有高校選課系統,需要對學校的系信息、教師信息、課程信息、學生信息、學生選課信息進行管理。已知系(DEPT)信息包括系編號(DeptNO)、系名稱(DeptName);教師(Teacher)信息包括教師號(TNO)、教師名(Tname);課程(Course)信息包括課程號(CNO)、課程名(CName)、課程學分(Credit);學生(Student)信息包括學號(SNO)、學生姓名(Sname)、學生性別(Sex)。
選課系統的管理規則如下:
?、?一個系可聘用多名教師,一個教師只受聘于一個系;
Ⅱ.一個系可有多名學生,一個學生只屬于一個系;
?、?一名教師可講授多門課程,一門課程可由多名教師講授;
?、?一名學生可選修多門課程,一門課程可被多名學生選修;
V.學生選修完課程后,可獲得相應課程的成績。
針對以上描述,完成下列設計內容:
(1)構建選修課系統的ER圖。(要求圖中的實體集名用試卷中給出的英文名,聯系所關聯的實體集名的首字母,字母問用“一”或“_”連接,大小寫不限)。
(2)根據所構建的ER圖,設計滿足3NF的關系模式,并標出每個關系模式的主碼和外碼。(要求關系模式名同實體集名或聯系名,屬性名用試卷中給出的英文名,大小寫不限)
參考解析:
【解題思路】
(1)ER圖的畫法
建立相應的ER圖的過程如下:
第一,確定實體類型。本題有四個實體類型,即Teacher實體,Course實體,Student實體和DEPT實體。
第二,確定聯系類型。Teacher實體與Course實體之間是多對多關系,即T-C關系,Student實體與Course實體之間是多對多關系,即S-C關系。DEPT實體與Teacher實體之間是一對多關系,即D-T關系。DEPT實體與Student實體之間是一對多關系,即D-S關系。
第三,把實體類型和聯系類型組合成ER圖。
第四,確定實體類型和聯系類型的屬性。
Teacher實體集屬性:教師號、教師名
Course實體集屬性:課程號、課程名、課程學分
Student實體集屬性:學號、學生姓名、學生性別
DEPT實體集屬性:系編號、系名稱
(2)ER模型轉換為關系模式的規則
?、侔袳R模型中的每一個實體集轉換為同名的關系,實體集的屬性就是關系的屬性,實體集的碼就是關系的碼。
②把ER模型中的每一個聯系轉換成一個關系,與該聯系相連的各實體集的碼以及聯系的屬性轉換為關系的屬性。關系的碼根據下列情況確定。
若聯系為1:1,則每個實體集碼均是該關系的候選碼。
若聯系為1:n,則關系的碼為n端實體集的碼。
若聯系為m:n,則為各實體集碼的組合或其中一部分實體集碼的組合。
?、酆喜⒕哂邢嗤a的關系。根據規則,把一個ER模型轉換為關系模式,一般經歷下面兩個步驟:
第一,標識ER模型中的聯系。
第二,依次轉換與每個聯系相關聯的實體集及聯系。
【參考答案】
ER圖如下所示:
設計3NF,如下:
DEFY(DeptNO,DeptName),主碼:DeptNO,無外碼
Teacher(TNO,TName,DeptNO),主碼TNO,外碼DeptNO
Student(SNO,SName,Sex,DeptNO),主碼SNO,外碼DeptNO
Course(CNO,CName,Credit),主碼CNO,無外碼
T-C(TNO,CNO),主碼(TNO,CNO),外碼TNO,CNO
S-C(SNO,CNO,成績),主碼(SNO,CNO),外碼SNO,CNO