數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編_第1頁
數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編_第2頁
數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編_第3頁
數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編_第4頁
數(shù)據(jù)庫原理與應(yīng)用課后習(xí)題答案李春葆 編_第5頁
已閱讀5頁,還剩137頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

L第1

數(shù)據(jù)庫系統(tǒng)概述

:E:HSjEH:E5K::::3^3:::::::::::

練習(xí)題1參考答案

i.文件系統(tǒng)中的文件與數(shù)據(jù)庫系統(tǒng)中的文件有何本質(zhì)上的不同?

答文件系統(tǒng)中的文件是面向應(yīng)用的,?個文件基本上對應(yīng)于一個應(yīng)用程序,文件之

間不存在聯(lián)系,數(shù)據(jù)冗余大,數(shù)據(jù)共享性差,數(shù)據(jù)獨立性差;數(shù)據(jù)庫系統(tǒng)中的文件不再面

向特定的某個或多個應(yīng)用,而是面向整個應(yīng)用系統(tǒng),文件之間是相互聯(lián)系著的,減少了數(shù)

據(jù)冗余,實現(xiàn)了數(shù)據(jù)共享,數(shù)據(jù)獨立性高。

2.對數(shù)據(jù)庫的3種不同數(shù)據(jù)觀是如何劃分的?

答概念模式體現(xiàn)了數(shù)據(jù)庫的總體觀,稱為DBA視圖:內(nèi)模式體現(xiàn)了數(shù)據(jù)庫的存儲觀,

稱為系統(tǒng)程序員視圖;外模式體現(xiàn)了數(shù)據(jù)庫的用戶觀,稱為用戶視圖。用戶視圖有多個,

而其他視圖只有一個。

3.什么是數(shù)據(jù)獨立性?數(shù)據(jù)庫系統(tǒng)是如何實現(xiàn)數(shù)據(jù)獨立性的?

答數(shù)據(jù)獨立性是指應(yīng)用程序和數(shù)據(jù)之間相互獨立、不受影響,即數(shù)據(jù)結(jié)構(gòu)的修改不

引起應(yīng)用程序修改的特性。數(shù)據(jù)獨立性包括物理數(shù)據(jù)獨立性和邏輯數(shù)據(jù)獨立性。物理數(shù)據(jù)

獨立性是指數(shù)據(jù)庫物理結(jié)構(gòu)改變時不必修改現(xiàn)有的應(yīng)用程序。邏輯數(shù)據(jù)獨立性是指數(shù)據(jù)庫

邏輯結(jié)構(gòu)改變時應(yīng)用程序不用改變。

數(shù)據(jù)獨立性是由DBMS的二級映象功能來保證的。數(shù)據(jù)庫系統(tǒng)通常采用外模式、模式

和內(nèi)模式三級結(jié)構(gòu),數(shù)據(jù)庫管理系統(tǒng)在這三級模式之間提供了外模式/概念模式和概念模式

/內(nèi)模式兩層映象,當(dāng)整個系統(tǒng)要求改變模式時(增加記錄類型,增加數(shù)據(jù)項)時,由DBMS

對各個外模式/概念模式的映象作相應(yīng)改變,可以使外模式保持不變,由于應(yīng)用程序是依據(jù)

數(shù)據(jù)的外模式編寫的,因而應(yīng)用程序不必修改,保證了數(shù)據(jù)的邏輯獨立性。當(dāng)數(shù)據(jù)的存儲

結(jié)構(gòu)改變時,由DBMS對概念模式/內(nèi)模式映象作相應(yīng)改變,可以使模式不變,從而應(yīng)用程

序也不必改變,保證了數(shù)據(jù)的物理獨立性。

[第2章]

數(shù)據(jù)模型

練習(xí)題2參考答案

1.什么是關(guān)系?什么是關(guān)系框架?關(guān)系之間實現(xiàn)聯(lián)系的手段是什么?什么是關(guān)系數(shù)據(jù)庫?

答關(guān)系是一張二維表,即元組的集合。關(guān)系框架是一個關(guān)系的屬性名表。形式化表示為:

R(A|,A2,…,A3其中:R為關(guān)系名,Ai為關(guān)系的屬性名。關(guān)系之間實現(xiàn)聯(lián)系的手段是通過關(guān)

系之間的公共屬性來實現(xiàn)聯(lián)系。關(guān)系數(shù)據(jù)庫是指對應(yīng)于一個關(guān)系模型的所有關(guān)系的集合。

2.某醫(yī)院病房計算機(jī)管理中需如下信息。

科室:科名、科地址、科電話、醫(yī)生姓名

病房:病房號、床位數(shù)、所屬科室名

醫(yī)生:姓名、職稱、所屬科室名、年齡、工作證號

病人:病歷號、姓名、性別、診斷醫(yī)生、病房號

其中,一個科室有多個病房、多個醫(yī)生;一個病房只能屬于一個科室;一個醫(yī)生只屬

于一個科室,但可負(fù)責(zé)多個病人的診治;一個病人的主治醫(yī)生只有一個。設(shè)計該計算機(jī)管

理系統(tǒng)的E-R圖。

答對應(yīng)的E-R圖如圖2.1所示。

圖2.1E-R圖

3.學(xué)校有若干個系,每個系有若干名教師和學(xué)生;每個教師可以教授若干門課程,并

參加多個項目;每個學(xué)生可以同時選修多門課程。請設(shè)計該學(xué)校的教學(xué)管理的E-R模型,

要求給出每個實體、聯(lián)系的屬性。

答該學(xué)校的教學(xué)管理E-R模型有以下實體:系、教師、學(xué)生、項目、課程。各實體

屬性如下:

系(系編號,系名,系主任)

教師(教師編號,教師姓名,職稱)

學(xué)生(學(xué)號,姓名,性別,班號)

項目(項目編號,名稱,負(fù)責(zé)人)

課程(課程編號,課程名,學(xué)分)

各實體之間的聯(lián)系如下:

教師擔(dān)任課程的1:n“任課”聯(lián)系

教師參加項目的n:m“參加”聯(lián)系

學(xué)生選修課程的n:m“選修”聯(lián)系

系、教師和學(xué)生之間的所屬關(guān)系的1:m:n“領(lǐng)導(dǎo)”聯(lián)系

對應(yīng)的E-R模型如圖2.2所示。

圖2.2E-R圖

[第3章]

關(guān)系數(shù)據(jù)庫

立H浴R生及田過岐王三過過

練習(xí)題3參考答案

i.簡述等值連接與自然連接的區(qū)別。

答等值連接與自然連接的區(qū)別是:自然連接一定是等值連接,但等值連接不一定是

自然連接,因為自然連接要求相等的分量必須是公共屬性,而等值連接要求相等的分量不

一定是公共屬性;等值連接不把重復(fù)屬性去掉,而自然連接要把重復(fù)屬性去掉。

2.設(shè)有關(guān)系R和S:

RMS

B<C

OA=C(RXS)

AR.BS.BC

abbcAR.BS.BC

abbdabea

cbbccbbc

cbbddebd

3.設(shè)有關(guān)系R、S:

R4

R.AR.BR.CS.AS.BS.C

abcbaf

abcdaf

bafbaf

bafdaf

ABCcbdbaf

bafcbddaf

[第4章]

關(guān)系數(shù)據(jù)庫規(guī)范化理論

星荒笛笆巡巡黑”逐常c言黑星或還冠施^至隹隹笆至年

練習(xí)題4參考答案

1.什么是數(shù)據(jù)的規(guī)范化?

答現(xiàn)實世界的數(shù)據(jù)是有關(guān)系的,但這種關(guān)系是雜亂的,在進(jìn)行數(shù)據(jù)分析時,,要規(guī)范

化這些關(guān)系。關(guān)系數(shù)據(jù)模型的創(chuàng)始人E.F.Codd系統(tǒng)地提出了規(guī)范化的理論,即范式(NF)

的概念。滿足一定條件的關(guān)系模式稱為范式,包括第一范式(1NF)、第二范式(2NF)、第

三范式(3NF)和BCNF范式等。一個低級范式的關(guān)系模式,通過分解(投影)方法可轉(zhuǎn)

換成多個高一?級范式的關(guān)系模式的集合。數(shù)據(jù)滿足范式的級別越高,就表示越規(guī)范化,其

數(shù)據(jù)冗余就越好,用DBMS設(shè)計時越方便。這個過程稱為數(shù)據(jù)的規(guī)范化。

2.下面給出一個數(shù)據(jù)集,判斷它是否可直接作為關(guān)系數(shù)據(jù)庫中的關(guān)系,若不行,則改

造成為盡可能好的并能作為關(guān)系數(shù)據(jù)庫中關(guān)系的形式,同時說明進(jìn)行這種改造的理由。

系名課程名教師名

計算機(jī)系DB李軍,劉強(qiáng)

機(jī)械系CAD金山,宋海

造船系CAM王華

自控系CTY張紅,曾鍵

答因為關(guān)系模式至少是1NF關(guān)系,即不包含重復(fù)組,并且不存在嵌套結(jié)構(gòu),給出的

數(shù)據(jù)集顯然不可直接作為關(guān)系數(shù)據(jù)庫中的關(guān)系,改造為1NF的關(guān)系如下:

系名課程名教師名

計算機(jī)系DB李軍

計算機(jī)系DB劉強(qiáng)

機(jī)械系CAD金山

機(jī)械系CAD宋海

造船系CAM王華

自控系CTY張紅

自控系CTY曾鍵

3.下面給出的關(guān)系R為第幾范式?是否存在操作異常?若存在,則將其分解為高一-

級范式。分解完成的高級范式中是否可以避免分解前關(guān)系中存在的操作異常?

R

工程號材料號數(shù)量開工日期完工日期價格

PiIi498059902250

PI12698059902300

Pih1598059902180

698119912250

P2II

141898119912350

P2

答它為INFo

因為該關(guān)系的候選關(guān)鍵字為(工程號,材料號),而非主屬性(開工日期和完工日期)

部分函數(shù)依賴于候選關(guān)鍵字的子集工程號,即:

(工程號,材料號開工日期

(工程號,材料號)P.完工日期

所以它不是2NF。

它存在操作異常。如果工程項目確定后,若暫時未用到材料]則該工程的數(shù)據(jù)因缺少

關(guān)鍵字的一部分(材料號)而不能進(jìn)入到數(shù)據(jù)庫中,出現(xiàn)插入異常。若某工程下馬,則刪

去該工程的操作也可能丟失材料方面的信息。

將其中的部分函數(shù)依賴分解為一個獨立的關(guān)系,則產(chǎn)生如下的兩個2NF關(guān)系子模式:

Ri

工程號材料號數(shù)量價格

PiIi4250

6300

Pi12R2

PiI315180工程號開工日期完工日期

P2Ii6250Pi98059902

P2I418350P298119812

分解后,新工程確定后,盡管還未用到材料,該工程數(shù)據(jù)可在關(guān)系R2中插入。刪除某

工程數(shù)據(jù)時,僅對關(guān)系R2操作,不會丟失材料方面的信息。

4.設(shè)有如下所示的關(guān)系R:

R

課程名教師名教師地址

Ci馬千里Di

c2于得水Di

C3余快D2

C4于得水DI

(1)它為第幾范式?為什么?

(2)是否存在刪除操作異常?若存在,則說明是在什么情況下發(fā)生的。

(3)將它分解為高一級范式,分解后的關(guān)系是如何解決分解前可能存在的刪除操作的

異常問題的?

答(1)它是2NF。

因為R的候選關(guān)鍵字為課程名,而“課程名一教師名”,“教師名f課程名”不成立,

教師名f教師地址,所以課程名」,教師地址,即存在非主屬性教師地址對候選關(guān)鍵字課

程名的傳遞函數(shù)依賴,因此R不是3NF。又因為不存在非主屬性對候選關(guān)鍵字的部分函數(shù)

依賴,所以R是2NF。

(2)存在刪除操作異常。當(dāng)刪除某門課程時會刪除不該刪除的教師的有關(guān)信息。

(3)分解為高一級范式如下:

課程名教師名

R2

Cl馬千里教師名教師地址

馬千里

C2于得水Di

C3余快于得水D,

于得水余快

C4D2

分解后,若刪除課程數(shù)據(jù)時,僅對關(guān)系Ri操作,教師地址信息在關(guān)系R?中仍然保留,

不會丟失教師方面的信息。

5.有如下的關(guān)系R:

(1)求出R所有的候選關(guān)鍵字。

(2)列出R中的函數(shù)依賴。

(3)R屬于第幾范式?

R

ADE

A,di

A2d6e2

A3d4e3

答(1)R的候選關(guān)鍵字為A和DE。

(2)R中的函數(shù)依賴有:A-DE,DE-A。

(3)R是BCNF。

6.設(shè)有函數(shù)依賴集F={AB-CE,A-C,GP—B,EPfA,CDE—P,HB—P,D-HGABCf

PG},計算屬性集D關(guān)于F的閉包D.

答々X=D,X(0)=D=

在F中找出左邊是D子集的函數(shù)依賴,其結(jié)果是D-HG,所以X(I)=X(O)HG=DGH,

顯然有X⑴WX⑼。

在F中找出左邊是DGH子集的函數(shù)依賴,未找到,則X°)=DGH。由于X°)=X⑴,因

此D:=DGH。

7.設(shè)有關(guān)系框架R(A,B,C,D,E)及其上的函數(shù)相關(guān)性集合F={A-C,BfD,C-D,DE

根5章]

數(shù)據(jù)庫設(shè)計

T7:Ua:pmpXZ::::KtR:::::::::

■hrli1J-rwTiJ"?■J-wJ?W>?????、/?■■■■■■■■■

練習(xí)題5參考答案

i.什么是數(shù)據(jù)庫設(shè)計?

答數(shù)據(jù)庫設(shè)計是指對于一個給定的應(yīng)用環(huán)境,提供一個確定的最優(yōu)數(shù)據(jù)模型與處理

模式的邏輯設(shè)計,以及一個確定的數(shù)據(jù)庫存儲結(jié)構(gòu)與存取方法的物理設(shè)計,建立起既能反

映現(xiàn)實世界信息和信息聯(lián)系,滿足用戶數(shù)據(jù)要求和加工要求,又能被某個數(shù)據(jù)庫管理系統(tǒng)

所接受,同時能實現(xiàn)系統(tǒng)目標(biāo),并有效存取數(shù)據(jù)的數(shù)據(jù)庫的過程。

2.試述采用E-R方法進(jìn)行數(shù)據(jù)庫概念設(shè)計的過程。

答采用E-R方法進(jìn)行數(shù)據(jù)庫概念設(shè)計,可以分成3步進(jìn)行:首先設(shè)計局部E-R模式,

然后把各局部E-R模式綜合成一個全局的E-R模式,最后對全局E-R模式進(jìn)行優(yōu)化,得到

最終的E-R模式,即概念模式。

3.假定一個部門的數(shù)據(jù)庫包括以下信息。

職工的信息:職工號、姓名、地址和所在部門。

部門的信息:部門所有職工、部門名、經(jīng)理和銷售的產(chǎn)品。

產(chǎn)品的信息:產(chǎn)品名、制造商、價格、型號及產(chǎn)品內(nèi)部編號。

制造商的信息:制造商名稱、地址、生產(chǎn)的產(chǎn)品名和價格。

試畫出這個數(shù)據(jù)庫的E-R圖。

答對應(yīng)的E-R圖如圖5.1所示。

圖5.1一個E-R圖

4.如圖5.2所示給出圖(a)、(b)和(c)3個不同的局部模型,將其合并成一個全局

信息結(jié)構(gòu),并設(shè)置聯(lián)系實體中的屬性(允許增加認(rèn)為必要的屬性,也可將有關(guān)基本實體的

屬性選作聯(lián)系實體的屬性)。

各實體構(gòu)成如下。

部門:部門號、部門名、電話、地址

職員:職員號、職員名、職務(wù)(干部/工人)、年齡、性別

設(shè)備處:單位號、電話、地址

工人:工人編號、姓名、年齡、性別

設(shè)備:設(shè)備號、名稱、規(guī)格、價格

零件:零件號、名稱、規(guī)格、價格

廠商:單位號、名稱、電話、地址

(a)(b)

圖5.2局部的E-R圖

答匯總后的E-R圖如圖5.3所示o

各類實體的屬性如下。

部門:部門號、部門名、電話、地址

職員:職員號、職員名、職務(wù)、年齡、性別

設(shè)備:設(shè)備號、名稱、規(guī)格、價格

零件:零件號、名稱、規(guī)格、價格

圖5.3匯總后的E-R圖

L第6^"1

SQLServer2005系統(tǒng)概述

超百隹函運*用潴潴巡短器;還建迎腔潑魂笆至巡

練習(xí)題6參考答案

1.SQLServer2005有哪些版本?

答SQLServer2005有以下5個版本:

?SQLServer2005學(xué)習(xí)版

?SQLServer2005工作組版

?SQLServer2005開發(fā)版

?SQLServer2005標(biāo)準(zhǔn)版

?SQLServer2005企業(yè)版

2.什么是SQLServer2005實例?

答所謂實例就是虛擬的SQLServer2005服務(wù)器,在同一臺計算機(jī)上可以安裝一個或

多個單獨的SQLServer2005實例,每個實例就好比是一個單獨的SQLServer2005服務(wù)器,

實例之間互不干擾。例如,如果有學(xué)生管理系統(tǒng)和教師管理系統(tǒng)兩個應(yīng)用程序,需要分別

使用不同的SQLServer2005,可以在一臺計算機(jī)上實裝兩個SQLServer2005實例,各自

管理學(xué)生教師和數(shù)據(jù),兩者不會相互影響。

3.SQLServer有哪兩種身份驗證模式?

答SQLServer有如下兩種身份驗證模式。

?Windows身份驗證模式:該身份驗證模式是在SQLServer中建立與Windows用戶

賬戶對應(yīng)的登錄賬號,在登錄Windows后,登錄SQLServer就不用再一次輸入用

戶名和密碼了。

?混合模式(Windows身份驗證和SQLServer身份驗證):該身份驗證模式就是在

SQLServer中建立專門的賬戶和密碼,這些賬戶和密碼與Windows登錄無關(guān)。在

登錄Windows后,登錄SQLServer還需要輸入用戶名和密碼。

4.SQLServer服務(wù)器是指什么?SQLServer客戶機(jī)是指什么?

答安裝有SQLServer服務(wù)器組件的計算機(jī)就是SQLServer服務(wù)器。安裝有SQL

Server客戶機(jī)組件的計算機(jī)就是SQLServer客戶機(jī)。

5.SQLServer管理控制器有哪些功能?

答SQLServer管理控制器是為SQLServer數(shù)據(jù)庫的管理員和開發(fā)人員提供的圖形

化、集成了豐富開發(fā)環(huán)境的管理工具,它包括各種數(shù)據(jù)庫對象的創(chuàng)建和管理、數(shù)據(jù)查詢和

分析等功能。

6.SQLServer配置管理器有哪些功能?

答SQLServer配置管理器用于管理與SQLServer相關(guān)聯(lián)的服務(wù),配置SQLServer使

用的網(wǎng)絡(luò)協(xié)議,以及從SQLServer客戶端計算機(jī)管理網(wǎng)絡(luò)連接配置。

7.在Windows資源管理器中打開SQLServer2005安裝文件夾,查看其位置和相關(guān)內(nèi)容。

答圖6.1顯示了SQLServer2005默認(rèn)實例的文件位置。

O

O

0

O

Q

O

O

圖6.1SQLServer2005默認(rèn)實例的文件位置

上機(jī)實驗題1參考答案

在實習(xí)環(huán)境中安裝SQLServer2005版本。安裝成功后,登錄SQLServer服務(wù)器,運

行SQLServer管理控制器。

操作過程

略。

L第7章]

創(chuàng)建和使用數(shù)據(jù)庫

:湘湘至加取3流速言言;笆言言言言笆至寇言言言

練習(xí)題7參考答案

1.SQLServer有哪些數(shù)據(jù)庫對象?

答SQLServer包含的數(shù)據(jù)庫對象如下:

?表

?字段

?索引

?視圖

?存儲過程

?觸發(fā)器

2.系統(tǒng)數(shù)據(jù)庫master包含哪些內(nèi)容?

答master是SQLServer中最重要的系統(tǒng)數(shù)據(jù)庫,它記錄了SQLServer實例的所有系

統(tǒng)級信息,例如登錄賬戶、鏈接服務(wù)器和系統(tǒng)配置設(shè)置,還記錄所有其他數(shù)據(jù)庫是否存在

以及這些數(shù)據(jù)庫文件的位置和SQLServer實例的初始化信息。

3.簡述文件組的概念。

答文件組就是把各個數(shù)據(jù)庫文件組成一個組,對它們整體進(jìn)行管理。通過設(shè)置文件

組,可以有效地提高數(shù)據(jù)庫的讀寫速度。例如,有3個數(shù)據(jù)文件分別存放在3個不同的物

理驅(qū)動器上(C盤、D盤、E盤),將這3個文件組成一個文件組。在創(chuàng)建表時,可以指定

將表創(chuàng)建在該文件組上,這樣該表的數(shù)據(jù)就可以分布在3個盤上。當(dāng)對該表執(zhí)行查詢操作

時.,可以并行操作,從而可大大提高查詢效率。

SQLServer2005提供3種文件組類型,分別是主文件組、自定義文件組(user_defined)

和默認(rèn)文件組。

4.一個數(shù)據(jù)庫中包含哪幾種文件?

答SQLServer2005采用操作系統(tǒng)文件來存放數(shù)據(jù)庫,數(shù)據(jù)庫文件可分為主數(shù)據(jù)文件、

次數(shù)據(jù)文件和事務(wù)H志文件共3類。

?主數(shù)據(jù)文件:用于存放數(shù)據(jù),它是所有數(shù)據(jù)庫文件的起點(包含指向其他數(shù)據(jù)庫

文件的指針)。每個數(shù)據(jù)庫都必須包含也只能包含一個主數(shù)據(jù)文件。主數(shù)據(jù)文件

的默認(rèn)擴(kuò)展名為.mdf。

?次數(shù)據(jù)文件:次數(shù)據(jù)文件也用來存放數(shù)據(jù)。一個數(shù)據(jù)庫中,可以沒有次數(shù)據(jù)文件,

也可以擁有多個次數(shù)據(jù)文件。次數(shù)據(jù)文件的默認(rèn)擴(kuò)展名為.ndf。

?事務(wù)日志文件:用于存放事務(wù)日志。每個數(shù)據(jù)庫都有一個相關(guān)的事務(wù)日志,事

務(wù)日志記錄了SQLServer所有的事務(wù)和由這些事務(wù)引起的數(shù)據(jù)庫的變化。每個

數(shù)據(jù)庫至少有一個日志文件,也可以擁有多個日志文件。日志文件的默認(rèn)擴(kuò)展

名為Jdf。

上機(jī)實驗題2參考答案

創(chuàng)建一個名稱為factory的數(shù)據(jù)庫,要求:

(1)將主數(shù)據(jù)庫文件factory.mdf放置在H:\DBF文件夾中,其文件大小自動增長為按5

MB增長。

(2)將事務(wù)日志文件factory」og.ldf放置在H:\DBF文件夾中,其文件大小自動增長為

按1MB增長。

操作過程

完成本實驗的操作步驟如下:

(1)啟動SQLServer管理控制器(采用例7.1的操作方法)。

(2)在“對象資源管理器”窗口中選中“數(shù)據(jù)庫”節(jié)點,右擊,在出現(xiàn)的快捷菜單中

選擇“新建數(shù)據(jù)庫”命令。

(3)進(jìn)入“新建數(shù)據(jù)庫”對話框,首先出現(xiàn)“常規(guī)”選項卡;在“數(shù)據(jù)庫名稱"文本

框中輸入新建數(shù)據(jù)庫的名稱factory,數(shù)據(jù)庫名稱設(shè)置完成后,系統(tǒng)自動在“數(shù)據(jù)庫文件”

列表中產(chǎn)生一個主數(shù)據(jù)文件(名稱為factory.mdf,初始大小為3MB,默認(rèn)自動增長為1MB)

和一個日志文件(名稱為factory_Iog.ldf,初始大小為1MB,默認(rèn)自動增長為10%),同時

顯示文件組、自動增長和路徑等默認(rèn)設(shè)置,如圖7.1所示?

(4)選中“數(shù)據(jù)庫文件”列表中的factory行,單擊“路徑”文本框后的“…”按鈕,

將路徑改為H:\DBF;單擊“自動增長”文本框后的“…”按鈕,將自動增長的增量改為5MB。

(5)選中“數(shù)據(jù)庫文件”列表框中的factoryjog行,單擊“路徑”文本框后的“…”

按鈕,將路徑改為H:\DBF;單擊“自動增長”文本框后的“…”按鈕,將自動增長的增量

改為10%,如圖7.2所示。

(6)其他保持默認(rèn)值。單擊“確定”按鈕,數(shù)據(jù)庫factory創(chuàng)建完成。

圖7.1“常規(guī)”選項k

圖7.2修改后的“常規(guī)”選項卡

[第8章]

創(chuàng)建和使用表

練習(xí)題8參考答案

i.簡述表的定義。

答在數(shù)據(jù)庫中包含一個或多個表。表是數(shù)據(jù)的集合,按行和列排列。例如,用戶可

能有一個名稱為authors的作者信息表。每一列包含某個信息,如作者的姓名。每行包含有

關(guān)某個特定作者的所有信息,如姓名、地址等。

在一個數(shù)據(jù)庫中可以有多個表,每個表都有一個特定的主題。例如,pubs數(shù)據(jù)庫可能

包含有關(guān)作者、標(biāo)題等的表。對每個主題使用一-個單獨的表可以消除重復(fù)數(shù)據(jù),使數(shù)據(jù)存

儲更有效并減少數(shù)據(jù)輸入項錯誤。

2.簡述列屬性的含義。

答列也稱為字段,表中的每個列都對應(yīng)關(guān)系模式中的一個屬性。每個屬性都具有一些特

性,如名稱、數(shù)據(jù)類型、長度和外鍵關(guān)系等。一個列的整組特性構(gòu)成該列在數(shù)據(jù)庫表中的定義。

可以在數(shù)據(jù)表中直接設(shè)置列特性,也可以在創(chuàng)建數(shù)據(jù)表之后才指定一些特性,但在將

數(shù)據(jù)表保存到數(shù)據(jù)庫之前,有3個列特性是必須指定的:列名稱、數(shù)據(jù)類型和長度??梢?/p>

通過編輯列的任何特性重新定義列。例如可以重命名一個列名稱,改變列長度,為列指定

默認(rèn)值,為列指定外鍵關(guān)系等。

3.表關(guān)系有哪幾種類型?

答關(guān)系是通過匹配鍵中的數(shù)據(jù)而工作的,而鍵通常是兩個表中具有相同名稱的列。

在大多數(shù)情況下,關(guān)系將一個表中為每個行提供唯一標(biāo)識符的主鍵與另一個表中外鍵數(shù)據(jù)

相匹配。例如,通過在student表的sno歹(主鍵)和score表的sno列(外鍵)之間創(chuàng)建

一個關(guān)系,可以使學(xué)生表與成績表相關(guān)聯(lián)。

表與表之間存在如下3種類型的關(guān)系,所創(chuàng)建的關(guān)系類型取決于相關(guān)聯(lián)的列是如何定

義的。

?一對一關(guān)系。在這種表關(guān)系中,表A中的一行最多只能與表B中的一行相匹配,

反之亦然。如果兩個相關(guān)列都是主鍵或具有唯一約束,則創(chuàng)建的是一對一關(guān)系。

?一對多關(guān)系。這是最常見的表關(guān)系類型。在這種關(guān)系類型中,表A中的行可以在

表B中有許多匹配行,但是表B中的行只能在表A中有一個匹配行。

?多對多關(guān)系。在這種表關(guān)系中,表A中的一行可與表B中的多行相匹配,反之亦

然。通過定義稱為連接表的第三方表創(chuàng)建這樣的關(guān)系,該連接表的主鍵包括表A

和表B中的外鍵。

4.什么是約束?有哪兒種常用的約束?

答約束是指表中數(shù)據(jù)應(yīng)滿足一些強(qiáng)制性條件,這些條件通常由用戶在設(shè)計表時指定。

常用的約束有:

非空約束(NOTNULL)

檢查約束(CHECK約束)

唯一約束(UNIQUE約束)

主鍵約束(PRIMARYKEY約束)

外鍵約束(FOREIGNKEY約束)

上機(jī)實驗題3參考答案

在上機(jī)實驗題2所創(chuàng)建的數(shù)據(jù)庫factory中,完成如下各題操作。

(1)建立職工表worker,其結(jié)構(gòu)為:職工號,int;姓名,char(8);性別,char(2);出

生日期,datetime;黨員否,bit;參加工作,datetime;部門號,into其中"職工號"為主

鍵。在worker表中輸入如下記錄:

職工號姓名性別出生日期黨員否參加工作部門號

1孫華男01/03/52是10/10/70101

3陳明男05/08/45否01/01/65102

7程西女06/10/80否07/10/02101

2孫天奇女03/10/65是07/10/87102

9劉夫文男01/11/42否08/10/60102

11劉欣男10/08/52否01/07/70101

5余慧男12/04/80否07/10/02103

8張旗男11/10/80否07/10/02102

13王小燕女02/10/64否07/15/89101

4李華男08/07/56否07/20/83103

10陳濤男02/10/58是07/12/84102

14李藝女02/10/63否07/20/90103

12李涵男04/19/65是07/10/89103

15魏君女01/10/70否07/10/93103

6歐陽少兵男12/09/71是07/20/92103

(2)建立部門表depart,其結(jié)構(gòu)為:部門號,int;部門名,char(10)。其中,“部門號”

為主鍵。在depart表中輸入如下記錄:

部門號部門名

101財務(wù)處

102人事處

103市場部

(3)建立職工工資表salary,其結(jié)構(gòu)為:職工號,int;姓名,char(8);日期,datetime;

工資,decimal(6,l)o其中,“職工號"和“日期"為主鍵。在salary表中輸入如下記錄:

職工號姓名日期工資

1孫華01/04/041201.5

3陳明01/04/041350.6

7程西01/04/04750.8

2孫天奇01/04/04900.0

9劉夫文01/04/042006.8

11劉欣01/04/041250.0

5余慧01/04/04725.0

8張旗01/04/04728.0

13王小燕01/04/041200.0

4李華01/04/041500.5

10陳濤01/04/041245.8

14李藝01/04/041000.6

12李涵01/04/041345.0

15魏君01/04/041100.0

6歐陽少兵01/04/041085.0

1孫華02/03/041206.5

3陳明02/03/041355.6

7程西02/03/04755.8

2孫天奇02/03/04905.0

9劉夫文02/03/042011.8

11劉欣02/03/041255.0

5余慧02/03/04730.0

8張旗02/03/04733.0

13王小燕02/03/041205.0

4李華02/03/041505.5

10陳濤02/03/041250.8

14李藝02/03/041005.6

12李涵02/03/041350.0

15魏君02/03/041105.0

6歐陽少兵02/03/041085.0

(4)建立worker、depart和salary3個表之間的關(guān)系。

操作過程

(1)采用例8.1的操作步驟在factory數(shù)據(jù)庫中創(chuàng)

?-dbo.work?LMj

無空

建worker表,其表結(jié)構(gòu)如圖8.1所示。打開worker列名數(shù)據(jù)關(guān)墓洋

陀職工號:char(10)

表,在其中輸入相應(yīng)的記錄,如圖8.2所示。:

姓名char(lO)

(2)采用例8.1的操作步驟在factory數(shù)據(jù)庫中創(chuàng)性別char⑵

出生日期datefame:

建depart表,其表結(jié)構(gòu)如圖8.3所示。打開depart表,黨員否chaK2)

在其中輸入相應(yīng)的記錄,如圖8.4所示。參加工作datebme

部門號nt

(3)采用例8.1的操作步驟在factory數(shù)據(jù)庫中創(chuàng)

建salary表,其表結(jié)構(gòu)如圖8.5所示。打開salary表,

圖8.1worker表結(jié)構(gòu)

在其中輸入相應(yīng)的記錄,如圖8.6所示。

(4)采用例8.1的操作步驟創(chuàng)建worker和salary兩個表之間的關(guān)系,如圖8.7所示。

worker表和depart表之間以"部門號”作為外鍵關(guān)系,worker表和salary表之間以“職工

號”作為外鍵關(guān)系。將該數(shù)據(jù)庫關(guān)系圖以Diagram」文件保存起來。

賽-dbo.worker徜要

職工號姓名螂出生日期黨費否蚓虹作部門號

11於男1952-1-30:001970-10-100:0...101

10防海男1958-2-100:00:001984-7-120:00:00102

11劉欣男1952-10-80:00:001970-1-70:00:00101

12李涵男1965-4-190:00:001989-7-100:00:00103

13王小惠卡19M-2-100:00:001989-7-150:00:00101

14李藝女1963-2-100:00:00否1990-7-200:00:00103

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論