第一篇:光纖通信期末考試題及答案分析
一、填空: 1、1966年,在英國標準電信實驗室工作的華裔科學家 首先提出用石英玻璃纖維作為光纖通信的媒質,為現代光纖通信奠定了理論基礎。
2、光纖傳輸是以 作為信號載體,以 作為傳輸媒質的傳輸方式。
3、光纖通常由、和 三部分組成的。
4、據光纖橫截面上折射率分布的不同將光纖分類為 和。
5、光纖色散主要包括材料色散、、和偏振模色散。
6、光纖通信的最低損耗波長是,零色散波長是。
7、數值孔徑表示光纖的集光能力,其公式為。
8、階躍光纖的相對折射率差公式為
9、光纖通信中常用的低損耗窗口為、1310nm、。
10、V是光纖中的重要結構參量,稱為歸一化頻率,其定義式為。
11、模式是任何光纖中都能存在、永不截止的模式,稱為基模或主模。
12、階躍折射率光纖單模傳輸條件為:。
13、電子在兩能級之間躍遷主要有3個過程,分別為、和受激吸收。
14、光纖通信中最常用的光源為 和。
15、光調制可分為 和 兩大類。
16、光纖通信中最常用的光電檢測器是 和。
17、摻鉺光纖放大器EDFA采用的泵浦源工作波長為1480nm和。
18、STM-1是SDH中的基本同步傳輸模塊,其標準速率為:。
19、單信道光纖通信系統功率預算和色散預算的設計方法有兩種:統計設計法和。
20、光纖通信是以 為載頻,以 為傳輸介質的通信方式。
21、光纖單模傳輸時,其歸一化頻率應小于等于。22.數值孔徑表示光纖的集光能力,其公式為:。
23、所謂模式是指能在光纖中獨立存在的一種 分布形式。
24、傳統的O/E/O式再生器具有3R功能,即在、和再生功能。
25、按射線理論,階躍型光纖中光射線主要有子午光線和 兩類。
26、光纖中的傳輸信號由于受到光纖的損耗和 的影響,使得信號的幅度受到衰減;波形出現失真。
27、半導體材料的能級結構不是分立的單值能級,而是有一定寬度的帶狀結構,稱為。
28、半導體P-N結上外加負偏壓產生的電場方向與 方向一致,這有利于耗盡層的加寬。
29、采用漸變型光纖可以減小光纖中的 色散。
30、SDH網中,為了便于網絡的運行、管理等,在SDH幀結構中設置了。
31、SDH的STM-N是塊狀幀結構,有9行,列。
32、處于粒子數反轉分布狀態的工作物質稱為。
33、EDFA的泵浦結構方式有:a、結構;b、結構;c、雙向泵浦結構。
34、和動態范圍是光接收機的兩個重要特性指標。
5、隨著激光器溫度的上升,其輸出光功率會。
36、目前,通信用光纖的纖芯和包層絕大多數是由 材料構成的。
37、在階躍型(弱導波)光纖中,導波的基模為。
38、根據光纖中的傳輸模式數量分類,光纖可分為 和。
39、LD是一種閾值器件,它通過 發射發光,而LED通過 發射發光。40、光纖色散主要包括、、材料色散和偏振模色散
41.常見的光線路碼型大體可以歸納為3類:擾碼二進制、和插入型碼。
42、在一根光纖中同時傳播多個不同波長的光載波信號稱為。
43、允許單模傳輸的最小波長稱為。
44、在1.3μm波段進行光放大通常用摻 光纖放大器,1.55μm波段通常用摻 光纖放大器。
45、導模的傳輸常數的取值范圍為:。
46、量子效率是用來衡量激光器的轉換效率的高低,其主要分為內量子效率、和。
47、典型的光電瞬態響應有:光電延遲、和。
48、摻鉺光纖放大器EDFA采用的泵浦源工作波長為1480nm和。
49、自愈環結構可以分為兩大類: 和。
50、一般來說,無電中繼傳輸距離超過1000km的系統被稱為長距離傳輸系統,超過 2000 km的被稱為很長距離,超過 3000 km被稱為超長距離傳輸系統。
51、系統容量和傳輸距離(無電中繼)是衡量長距離WDM光傳輸系統性能的兩個基本指標。
1、高錕
2、激光光波 光纖
3、纖芯 包層 涂覆層
4、階躍折射率型 漸變折射率型
5、模式色散 波導色散 6、1.55μm 1.31μm
7、NA?22n1?n28、??n1?n2 n19、850nm 1550nm
10、V?2?a?022
11、HE11
12、V?2.405 n1?n213、自發發射 受激輻射
14、半導體激光器 發光二極管
15、直接調制 間接調制
16、光電二極管 雪崩光電二極管 17、980nm 18、155.520Mbit/s
19、最壞值設計法 20、光波 光纖 21、2.405 22.NA?22n1?n2
23、電磁場
24、再整形 再定時
25、斜射線
26、色散
27、能帶
28、內電場
29、模式 30、開銷比特(或管理比特)31、270×N
32、激活物質(或增益物質)
33、同向泵浦 反向泵浦
34、靈敏度
35、減少
36、石英
37、LP01
38、多模光纖 單模光纖
39、受激 自發 40、模式色散 波導色散 41.字變換碼
42、光波分復用
43、截止波長
44、鐠 鉺
45、k0n2???k0n1
46、外量子效率 外微分量子效率
47、張弛振蕩 自脈動 48、980nm
49、通道倒換環 復用段倒換環 50、2000 3000
51、系統容量
二、名詞解釋:
1、瑞利散射
2、色散位移光纖
3、受激輻射
4、直接調制和間接調制
5、子午光線
6、弱導波光纖
7、閾值電流
8、最壞值設計法 參考答案
1、瑞利散射是光纖材料的本征散射,它是由于光纖中折射率在微觀上的隨機起伏所引起。石英光纖在加熱拉制過程中,由于熱騷動,使原子得到的壓縮不均勻,這使物質的密度不均勻,進而使折射率不均勻,這種不均勻性在冷卻的過程中被固定下來。這種不均勻度與波長相比是小尺寸的,因此產生的散射稱為瑞利散射。
2、一種將零色散移到波長1.55μm而該處損耗又最小的光纖。
3、處于高能級的電子,在受到外來能量為hf=(E2-E1)的光子激發的情況下,躍遷到低能級,從而發射出一個和激發光子相同的光子的過程稱為受激幅射。
4、將激光器LD或發光二極管LED的驅動電流用疊加在偏置電流上的電信號進行調制,由此實現對LD或LED輸出的光強度進行調制的方式稱為直接調制。使LD或LED在一定的驅動電流下輸出固定強度的光,再通過光調制器使輸出光的信息隨電信號而變化,將這種調制方式成為間接調制。
5、處在一個子午面(包含光纖軸線的平面)內,經過光纖的軸線在周圍邊界面間作內部全反射的光纖。
6、纖芯折射率與包層折射率差極小的光纖。
7、當LD注入電流達到將產生激光時的電流值。
8、最壞值設計法是系統設計中最常用的方法,這種方法在設計再生段距離時,將所有參考值都按最壞值選取,而不管其統計分布如何。
三、簡答題:
1、光纖通信發展至今經歷了哪些里程碑?
2、應用于光纖通信系統的光源應該具備什么要求?
3、由P-I曲線知,半導體激光器是閾值型器件,簡述激光器隨著注入電流的不同而經歷的幾個典型階段。
4、光纖中產生損耗的主要因素是什么?光纖中有哪些損耗?
5、簡述雪崩光電二極管的工作原理。參考答案
1、(1)20世紀60年代初期,光纖通信發展史上迎來了第一個里程碑,世界上第一臺相干振蕩光源紅白事激光器問世,給光通信帶來了新的希望;(2)1966年華裔科學家C.K.Kao博士和G.A.Hockham,對光纖傳輸的前景發表了具有重大歷史意義的論文,1970年,美國康寧玻璃公司的Kapron博士等人研制出傳輸損耗僅為20dB/km的光纖,這是光纖通信發展歷史上的一個里程碑。(3)1985年,南安普頓大學的Mears等人制成了摻鉺光纖放大器(EDFA)(4)1993年K.Hill等人提出了使用相位掩膜法制造光纖光柵,使得全光器件的研制和集成成為可能,光纖光柵、全光纖光子器件、平面波導器件及其集成的出現是光纖通信史上的又一個里程碑。
2、光纖通信系統均采用半導體發光二極管(LED)和激光二極管(LD)作為光源。這類光源具有尺寸小、耦合效率高、發射波長在光纖中低損耗傳輸,響應速度快、波長和尺寸與光纖適配,并且可在高速條件下直接調制等優點
3、半導體激光器是一個閾值器件,它的工作狀態隨注入電流的不同而不同。當注入電流較小時,有源區里不能實現粒子數反轉,自發發射占主導地位,激光器發射普通的熒光,其工作狀態類似于一般的發光二極管。隨著注入電流的加大,有源區里實現了粒子數反轉,受激輻射占主導地位,但當注入電流小于閾值電流時,諧振腔里的增益還不足以克服損耗,不能在腔內建立起一定模式的振蕩,激光器發射的僅僅是較強的熒光,這種狀態稱之為“超輻射”狀態。只有注入電流達到閾值以后,才能發射譜線尖銳。模式明確的激光。
4、由于吸收和散射的原因使光纖發生損耗。光纖中發生損耗的原因,有來自光纖本身的損耗,也有光纖與光源的耦合損耗以及光纖之間的連接損耗,如熔接損耗,彎曲損耗,端面損耗,光學損耗等。光纖本身的損耗有吸收損耗(本征吸收、雜質吸收)和散射損耗(瑞利散射、結構缺陷散射)。本征損耗是光纖基礎材料固有的吸收,并不是雜質或者缺陷所引起的。本征損耗特點是確定了某一種材料吸收損耗的下限,與波長有關。
5、當在光電二極管上加反向電壓,使其耗盡區內的電場強度大于105V/cm時,光生載流子在強電場作用下高速通過耗盡區向兩級移動。在移動過程中,由于碰撞游離而產生更多的新載流子,形成雪崩現象,從而使流過二極管的光電流成百倍地增加。利用光生載流子雪崩效應工作的PN結光電二極管就是APD。
6、光纖通信技術的特點
7、單模光纖中有那幾種色散?色散對光纖通信系統有什么影響?
8、半導體激光器產生激光需要那些條件?光纖通信對半導體發光器件有哪些基本要求?
9、簡述摻鉺光纖放大器的工作原理? 參考答案:
6、傳輸容量大;傳輸損耗小,中繼距離長;抗干擾性好,保密性強,使用安全;材料資源豐富,可節約金屬材料;重量纖,可繞性好,敷設方便;缺點是組件昂貴,光纖質地脆,機械強度低,連接比較困難,分路、耦合不方便,彎曲半徑不宜太小
7、單模光纖中有材料色散、波導色散和偏振色散。色散使得輸出光信號脈沖被展寬,產生碼間干擾,增加誤碼率,這樣就限制了通信容量和傳輸距離。
8、條件:1).粒子反轉分布條件(粒子能從“價帶”泵浦到“導帶”上)。2).閾值條件(要有足夠的能量使粒子泵浦到一定程度)。3).選頻機制(篩成單色光)。基本要求:1).光源的發光波長應符合目前光纖的三個低損耗窗口:即短波長波段的0.85μm和長波長波段的1.31μm和1.55μm。2).能長時間連續工作,并能提供足夠的光輸出功率。3).與光纖耦合效率高。4).光源的譜線寬度窄。5).壽命長,工作穩定。
9、摻鉺光纖放大器的工作原理:在摻鉺光纖中,低能級的電子吸收泵浦光的能量,由基態躍遷至處于高能級的泵浦態。由于泵浦態上載流子的壽命時間只有1us,電子迅速以非輻射方式由泵浦態豫馳至亞穩態,在亞穩態上載流子有較長 的壽命,在源源不斷的泵浦下, 亞穩態上的粒子數積累, 從而實現了粒子數反轉分布。信號光使得亞穩態上的電子以受激輻射的方式躍遷到基帶上,對應于每一次躍遷,都將產生一個與信號光子一樣的光子,此信號光子與電子(受激輻射)一起發射出去,實現了光放大。
10.請寫出激光產生的必要充分條件,并加以簡單論述。10.答:激光產生的必要條件: 1)粒子數反轉分布(1分)當光束通過原子或分子系統時,一般情況下絕大部分粒子數處于基態;而如果激發態的電子數遠遠多于基態電子數,就會使激光工作物質中受激發射占支配地位,這就是工作物質“粒子反轉分布”狀態。(2分)2)減少振蕩模式數(1分)
想要得到方向性很好、單色性很好的激光,僅有激活介質是不夠的,這是因為:第一,在反轉分布能級間的受激發射可以沿各個方向產生,第二,激發出的光可以有很多頻率,對應很多模式,難以形成單色亮度很強的激光。欲使光束進一步加強,就必須使光束來回往復地通過激活介質,使之不斷地沿某一方向得到放大,并減少振蕩模式數目。(2分)激光產生的充分條件:
1)起振條件——閾值條件(1分)光在諧振腔內傳播時,光在鏡面上總有一部分透射損失,且鏡面和腔內激活介質總還存在著吸收、散射等損失,因而只有光的增益能超過這些損失時,光波才能被放大,從而在腔內振蕩起來,稱這個條件為振蕩閾值條件。(2分)2)穩定振蕩條件——增益飽和效應(1分)
當入射光強增加到一定程度時,增益系數將隨光強的增大而減小并最終達到穩定,這種現象稱為增益飽和效應。(2分)
11、請寫出Maxwell方程組的微分形式,解釋各個物理量的含義,并說明每個方程描述的物理現象。
?B?D.答:??E?? 1)??H?J? 2)
?t?t??D?? 3)??B?0 4)其中:E(r,t)為電場強度矢量、B(r,t)為磁感應強度矢量、D(r,t)為電位移矢量、H(r,t)為磁場強度矢量、?=?(r,t)為封閉曲面內的自由電荷密度標量、J=J(r,t)為電流密度矢量。
(1)式來源于法拉第電磁感應定律,指出變化的磁場會產生感應的電場,這是一個渦旋場,其電力線是閉合的,不同于閉合面內有電荷時的情況,且只要所限定的面積中磁通量發生變化,不管導體存在與否,必定伴隨電場的變化。
(2)來源于安培環路定律,但麥克斯韋將其加上了由電場變化感生的位移電?D流項(其中JD?為位移電流密度),說明在交變電磁場作用下,磁場既包括?t傳導電流與空間自由電荷產生的部分,也包括位移電流產生的部分,變化的電場
產生的位移電流與傳導電流以及空間自由電荷電流在產生磁效應方面是等效的。
(3)來源于電場的高斯定律,表示電場可以是有源場(4)來源于磁通量連續定律,即通過一個閉合面的磁通量等于零,磁場是一個無源場,磁力線永遠是閉合的。
四、計算題:
1、階躍光纖纖芯和包層的折射指數分別為n1=1.46,n2=1.45,試計算: 1)纖芯子和包層的相對折射指數差Δ;
2)光纖數值孔徑NA;
3)在1km光纖上,由于子午線的光程差所引起最大時延差Δτmax; 4)若將Δτmax減小為10ns/km, n2應選什么值;
2、階躍光纖,n1=1.465, λ=1.31μm, 1)Δ=0.25,保證單模傳輸時,芯子半徑a應取多大; 2)若取芯徑a=5μm,保證單模傳輸時,Δ應怎樣選擇?
3、半導體激光器發射光子的能量近似等于材料的禁帶寬度,已知GaAs材料的Eg=1.43eV,某一InGaAsP材料的Eg=0.96eV,求它們的發射波長。參考答案: 1解:1)??n1?n222 2)NA?n1?n2 n1Ln1n1?n2Ln1n1?n2 4)???max? ??Cn2Cn23)??max?(帶入數值計算)2、1)解: 單模傳輸條件為:0?V?2.40483
即0?
3、解: Eg(eV)?h?hc ?qq?2?n1a2???2.40483
??hc1.24??m
qEg(eV)Eg(eV)1.24?m?0.867?m 1.431.24?m?1.292?m 0.96GaAs:??InGaAsP: ??
4、一段40km長的光纖線路,其損耗為0.5dB/km。
(1)如果在接收端保持0.3μW的接收光功率,則發送端的功率至少為多少?
(2)如果光纖的損耗變為0.25dB/km,則所需的輸入光功率又為多少?
5、一個光電二極管,當λ=1.3μm時,響應度為0.6A/W,計算它的量子效率。(8分)
6、已知;(1)Si PIN 光電二極管,量子效率??0.7,波長??0.85?m,(2)Ge光電二極管,??0.4,??1.6?m,計算它們的響應度。參考答案(1)(2)
10P10P?|dB??lgout?|dB??lgoutLPinLPin0.5??100.3?W100.3?W 0.25??lg lg40Pin40PinPin?3?W Pin?30?W5、R??eo??(?m)? h?1.241.24?R(A/W)1.24?0.6??0.57
?(?m)1.3??6.響應度R?IP?eo??eo??(?m)???Poh?hc1.240.7?0.85?0.48A/W
1.240.4?1.6?0.52A/W 1.24Si 光電二極管:R?Ge 光電二極管:R?
第二篇:光纖通信期末論文
光時分復用技術
摘要:光時分復用技術是提高光纖通信容量的一個重要手段,還是全光網絡的一種重要技術方案。本文對光時分復用技術進行了介紹,并展望了其發展前景。關鍵詞光纖通信光時分復用全光網絡
1引言
光纖通信已有30多年的發展史。在這30多年里,光纖通信技術得到了飛速的發展,但是光纖的巨大容量還遠遠沒有被利用起來,理論上,光纖可以提供25000 GHz的帶寬。傳統的電的時分復用(TDM)技術目前在實驗室可以達到40Gbit/s的水平,但是由于電子遷移速率的限制,采用這種方法進一步提高速率已經十分困難。目前有兩種技術可以提高光纖的傳輸容量,一種是光波分復用(WDM)技術,一種是光時分復用(OTDM)技術,前者是通過增加單根光纖中傳輸的信道數來提高光纖的傳輸容量,后者是提高單信道的速率。目前采用WDM技術實現的最高速率已達2.6Tbit/S,而OTDM技術實現的單信道最高速率達640Gbit/s。
但是和WDM相比,OTDM技術還很不成熟,很多的器件尚處于實驗室的研究階段。OTDM之所以引起人們的很大興趣,主要原因有兩個:一是它可以克服WDM的一些固有的缺點,如:放大器級聯產生的增益特性的不平坦。光纖非線性的限制等等;二是OTDM技術被認為是一個長遠的網絡技術,將來的網絡必將是采用全光交換和全光路由選擇的全光網絡,(OTDM)的一些特點使它作為將來的全光網絡技術方案更具吸引力。
WDM和OTDM并不是互不兼容相互對立的技術,它們可以共存于同一個網絡中,因為單靠WDM或OTDM來提高光纖通信系統容量的能力是有限的。實際上,可以把多個OTDM信號進行波分復用,從而大大提高傳輸容量。
2光時分復用技術
光時分復用的原理和電時分復用相同,電時分復用由于受到電子速率極限的限制,速率不可能很高,于是人們自然想到了直接在光域上進行時分復用的方法。超短脈沖光源在時鐘的控制下產生重復頻率為時鐘頻率的超短光脈沖,該超短光
脈沖經摻餌光纖放大器(EDFA)放大后分成N路,每路光脈沖由各支路信號單獨調制,調制后的信號經過不同的時延后用合路器合并成一路高速OTDM信號,完成復用功能。假設支路信號的速率為B,則復用后的OTDM信號速率為N×B。OTDM信號經光纖傳輸到達接收端后首先進行時鐘提取,提取的時鐘作為控制信號送到解復用器解出各個支路信號,再對各個支路信號單獨接收。
一個點對點的OTDM系統的關鍵技術主要包括:高重復頻率的超短脈沖光源;復用解復用技術;時鐘提取技術;高速信號傳輸技術。
2.1高重復頻率的超短脈沖光源
除了通常對光信號源穩定性的要求外,超高速光時分復用系統對所用的光信號源還有特別的要求。它要求脈沖寬度至少小于1/3碼元周期、而且脈沖沒有啁啾。目前,用于OTDM系統的光源主要有四種:鎖模光纖激光器、半導體鎖模激光器、分布反饋半導體激光器/電吸收調制器組合光源和增益開關半導體激光器。
鎖模光纖激光器可以產生重復頻率達40GHz、脈沖寬度小于3ps的超短光脈沖,而且它還具有重復頻率和波長可調兩個優點,可用于超高速的OTDM系統。這種光源的諧振腔由光纖環組成,腔長很長,主動銷模是靠一個光調制器來完成,當加在調制器上信號的頻率為諧振腔基模頻率的整數信時,就可達到鎖模的效果。
半導體鎖模激光器具有體積小、結構緊湊的特點,它是通過鎖定基模的方法來達到鎖模的效果,可以達到數十GHz的重復頻率。采用外部控制措施,半導體鎖模激光器可以產生脈寬在1ps以下的光脈沖。
分布反饋半導體激光器/電吸收調制器組合光源和增益開關半導體激光器比較簡單、較容易實現,目前在速率相對較低的OTDM系統中應用比較廣泛。
2.2復用解復用技術
傳統的復用器由耦合器和光纖時延線組成。這種方法很簡單,但很難保證產生的碼元間隔精確相等,而且溫度的改變將影響光纖時延線的長度,使得碼元間隔隨溫度產生波動。目前較好的方法是采用全光調制和光時鐘相結合的方案或采
用集成的方法。
OTDM解復用器實質上是一個高速光開關,主要有兩種類型:光電開關型解復用器和全光型解復用器。光電開關型解復用器速率較低,對于高速OTDM系統,一般采用全光解復用器。全光解復用器包括非線性光纖環鏡型解復用器(NOLM)、半導體光放大器環鏡型解復用器(SLALOM或TOAD)和半導體光放大器MaCh-Zhender干涉儀型解復用器(SOA-MZI),以及基于光纖或半導體光放大器中四波混頻的解復用器。
NOLM解復用器是利用光纖中的交叉相位調制效應來完成解復用的功能,它具有結構簡單,開關速度高的優點,目前在OTDM系統中得到了廣泛的應用。半導體光放大器環鏡型解復用器和半導體光放大器Mach-Zhender干涉儀型解復用器則是利用半導體光放大器中的交叉相位調制來實現解復用功能,由于半導體光放大器的非線性效應很大,所以需要的控制脈沖的能量小,而且結構比較緊湊。基于光纖或半導體光放大器中四波混頻的解復用器則是利用了光纖或半導體光放大器中的四波混頻效應,它的速率可以很高。
2.3時鐘提取技術
OTDM的時鐘提取技術大體上可以分為三種類型:電時鐘提取、全光時鐘提取和光電鎖相環時鐘提取。OTDM系統電時鐘提取和電TDM中的時鐘提取方法相同,它采用一個高Q值的濾波器直接提取時鐘。這種方法比較簡單,但是不適合用于高速OTDM系統中。
全光時鐘提取技術主要包括光有源或無源窄帶濾波器直接提取時鐘技術和注入鎖定時鐘提取技術。采用光窄帶濾波器提取的時鐘質量不好,時間抖動較大。注入領定時鐘提取技術適于提取位時鐘,而不適于提取幀時鐘。
光電鎖相環時鐘提取技術是一種比較好的時鐘提取技術,它利用一個光比特相位比較器將本地產生的光時鐘與人射光比特流鎖定。這種技術既利用了光學信號處理的高速性能,又利用了傳統的電子鎖相環的頻率和相位跟蹤特性,因此在高速OTDM傳輸系統中應用非常廣泛。
2.4高速信號傳輸技術
對于高速OTDM信號,光纖的色散是限制其傳輸距離的主要因素,在一個標準單模光纖上,如果不采用相應的補償和控制措施,40Gbit/s的信號只能傳輸4km。目前,主要有兩種高速光信號傳輸技術:一是光孤子技術,另一個是色散補償技術。
光孤子是具有特定形狀和特定功率的光脈沖,在傳輸過程中,光纖色散產生的脈沖展寬效應和自相位調制產生的脈沖壓縮效應正好完全抵消,從而可同時消除光纖色散和非線性的影響,脈沖可以傳輸很長距離而不會變形。而色散補償主要是通過采用一段和光纖色散特性相反的色散介質來抵消色散的影響,或對信號進行相應的處理來消除或降低色散的影響。色散補償技術主要有三種:色散補償光纖、啁啾布喇格光纖光柵和中間光相位共軛補償技術,目前的研究取得了很大的進展,有的已進入實用階段。
隨著速率的進一步提高,偏振模色散(PMD)和高階色散對光纖傳輸系統的性能的影響越來越突出,要實現超高速OTDM信號的長距離傳輸,必須要對偏振模色散進行補償。但是我們也應注意到,這些補償方法不可能完全消除信號在傳輸過程中因色散、非線性、放大器噪聲等因素產生的畸變,所以在長距離傳輸或大規模的全光網絡中,必要時應對光脈沖進行全光再生。
3.總結
從目前的研究情況看,OTDM存在三個研究發展方向:一個發展方向是研究更高速率的系統并和WDM相結合,目前OTDM的最高速率已達640 Gbit/S,OTDM和WDM相結合已實現了3Tbit/s的傳輸速率;第二個發展方向是OTDM實用化技術和比特間插的OTDM網絡技術,歐洲一直在從事40Gbit/S的OTDM系統和網絡方面的研究工作,其中一些關鍵器件已接近實用;第三個方向是OTDM全光分組網絡,和電的分組交換網絡將代替電的電路交換網絡一樣,光的分組交換網絡將是全光網絡的一個發展方向,主要是美國在這方面作了大量的研究,英國電信目前也在進行這方面的研究。
第三篇:數據庫期末考試題及答案
數據庫系統概論習題集 第一章 緒論
一、選擇題
1.DBS是采用了數據庫技術的計算機系統,它是一個集合體,包含數據庫、計算機硬件、軟件和()。
A.系統分析員
B.程序員 C.數據庫管理員
D.操作員
2.數據庫(DB),數據庫系統(DBS)和數據庫管理系統(DBMS)之間的關系是()。
A.DBS包括DB和DBMS
B.DBMS包括DB和DBS
C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS
3.下面列出的數據庫管理技術發展的三個階段中,沒有專門的軟件對數據進行管理的是()。
I.人工管理階段
II.文件系統階段
III.數據庫階段
A.I 和 II
B.只有 II C.II 和 III
D.只有 I
4.下列四項中,不屬于數據庫系統特點的是()。
A.數據共享
B.數據完整性
C.數據冗余度高
D.數據獨立性高
5.數據庫系統的數據獨立性體現在()。
A.不會因為數據的變化而影響到應用程序
B.不會因為系統數據存儲結構與數據邏輯結構的變化而影響應用程序
C.不會因為存儲策略的變化而影響存儲結構
D.不會因為某些存儲結構的變化而影響其他的存儲結構
6.描述數據庫全體數據的全局邏輯結構和特性的是()。
A.模式
B.內模式 C.外模式 D.用戶模式
7.要保證數據庫的數據獨立性,需要修改的是()。
A.模式與外模式
B.模式與內模式
C.三層之間的兩種映射
D.三層模式
8.要保證數據庫的邏輯數據獨立性,需要修改的是()。
A.模式與外模式的映射
B.模式與內模式之間的映射
C.模式
D.三層模式
9.用戶或應用程序看到的那部分局部邏輯結構和特征的描述是(),它是模式的邏輯子集。
A.模式
B.物理模式
C.子模式 D.內模式
10.下述()不是DBA數據庫管理員的職責。
A.完整性約束說明 B.定義數據庫模式
C.數據庫安全 D.數據庫管理系統設計
選擇題參考答案:(1)C(2)A(3)D(4)C(5)B(6)A(7)C(8)A(9)C(10)D
二、簡答題
1.試述數據、數據庫、數據庫系統、數據庫管理系統的概念。
數據:描述事物的符號記錄稱為數據。數據的種類有文字、圖形、圖象、聲音、正文等等。數據與其語義是不可分的。
*解析:在現代計算機系統中數據的概念是廣義的。早期的計算機系統主要用于科學計算,處理的數據是整數、實數、浮點數等傳統數學中的數據等。現在計算機能存儲和處理的對象十分廣泛,表示這些對象的 數據也越來越復雜。
數據與其語義是不可分的。500這個數字可以表示一件物品的價格是500元,也可以表示一個學術會議參加的人數有500人。還可以表示一袋奶粉重500克。
數據庫:數據庫是長期儲存在計算機內、有組織的、可共享的數據集合。數據庫中的數據按一定的數據模型組織、描述和儲存,具有較小的冗余度、較高的數據獨立性和易擴展性,并可為各種用戶共享。
*解析:簡單地講,數據數據庫數據具有永久儲存、有組織和可共享三個特點。
數據模型是數據庫的核心概念。每個數據庫中數據的都是按照某一種數據模型來組織的。
數據庫系統:數據庫系統(DBS)是指在計算機系統中引入數據庫后的系統構成。數據庫系統由數據庫、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員構成。
*解析:數據庫系統和數據庫是兩個概念。數據庫系統是一個人-機系統,數據庫是數據庫系統的一個組成部分。但是在日常工作中人們常常把把數據庫系統簡稱為數據庫。希望讀者能夠從人們講話或文章的上下文中區分“數據庫系統”和“數據庫”。不要引起混淆。
數據庫管理系統:數據庫管理系統(DBMS)是位于用戶與操作系統之間的一層數據管理軟件。用于科學地組織和存儲數據、高效地獲取和維護數據。DBMS主要功能包括數據定義功能、數據操縱功能、數據庫的運行管理功能、數據庫的建立和維護功能。
*解析:DBMS是一個大型復雜的軟件系統。是計算機中的基礎軟件。目前,專門研制DBMS的廠商及其研制的DBMS產品很多。著名的有美國IBM公司的DB2關系數據庫管理系統、IMS層次數據庫管理系統;美國ORACLE公司的ORACLE關系數據庫管理系統;SYBASE公司的SYBASE關系數據庫管理系統;美國微軟公司的SQL SERVER關系數據庫管理系統等等。
2.使用數據庫系統有什么好處?
使用數據庫系統的好處是由數據庫管理系統的特點或優點決定的。
使用數據庫系統的好處很多,例如可以大大提高應用開發的效率,方便用戶的使用,減輕數據庫系統管理人員維護的負擔等。
使用數據庫系統可以大大提高應用開發的效率。因為在數據庫系統中應用程序不必考慮數據的定義、存儲和數據存取的具體路徑,這些工作都由DBMS來完成。用一個通俗的比喻,使用了DBMS就如有了一個好參謀好助手,許多具體的技術工作都由這個助手來完成。開發人員就可以專注于應用邏輯的設計而不必為管理數據的許許多多復雜的細節操心。
還有,當應用邏輯改變,數據的邏輯結構需要改變時,由于數據庫系統提供了數據與程序之間的獨立性。數據邏輯結構的改變是DBA的責任,開發人員不必修改應用程序,或者只需要修改很少的應用程序。從而既簡化了應用程序的編制,又大大減少了應用程序的維護和修改。
使用數據庫系統可以減輕數據庫系統管理人員維護系統的負擔。因為DBMS在數據庫建立、運用和維護時對數據庫進行統一的管理和控制,包括數據的完整性、安全性,多用戶并發控制,故障恢復等等都由DBMS執行。
總之,使用數據庫系統的優點是很多的,既便于數據的集中管理,控制數據冗余,可以提高數據的利用率和一致性,又有利于應用程序的開發和維護。讀者可以在自己今后的工作中結合具體應用,認真加以體會和總結。
3.試述文件系統與數據庫系統的區別和聯系。
文件系統與數據庫系統的區別:文件系統面向某一應用程序,共享性差、冗余度大,獨立性差,紀錄內有結構、整體無結構,應用程序自己控制。
數據庫系統面向現實世界,共享性高、冗余度小,具有高度的物理獨立性和一定的邏輯獨立性,整體結構化,用數據模型描述,由數據庫管理系統提供數據安全性、完整性、并發控制和恢復能力。
讀者可以參考《概論》書中表1.1 中的有關內容。
文件系統與數據庫系統的聯系是:文件系統與數據庫系統都是計算機系統中管理數據的軟件。
*解析:
文件系統是操作系統的重要組成部分,而DBMS是獨立于操作系統的軟件。但是DBMS是在操作系統的基礎上實現的。數據庫中數據的組織和存儲是通過操作系統中文件系統來實現的。
讀者進一步學習數據庫管理系統實現的有關課程后可以對本題有深入的理解和全面的解答。因為DBMS的實現與操作系統中的文件系統是緊密相關的。例如,數據庫實現的基礎是文件,對數據庫的任何操作最終要轉化為對文件的操作。所以在DBMS實現中數據庫物理組織的基本問題是如何利用或如何選擇操作系統提供的基本的文件組織方法。這里我們就不具體展開了。
4.舉出適合用文件系統而不是數據庫系統的例子;再舉出適合用數據庫系統的應用例子。
?適用于文件系統而不是數據庫系統的應用例子
數據的備份,軟件或應用程序使用過程中的臨時數據存儲一般使用文件比較合適。早期功能比較簡單、比較固定的應用系統也適合用文件系統。
?適用于數據庫系統而非文件系統的應用例子
目前,幾乎所有企業或部門的信息系統都以數據庫系統為基礎,都使用數據庫。如一個工廠的管理信息系統(其中會包括許多子系統,如庫存管理系統、物資采購系統、作業調度系統、設備管理系統、人事管理系統等等),還比如學校的學生管理系統,人事管理系統,圖書館的圖書管理系統等等都適合用數據庫系統。希望同學們能舉出自己了解的應用例子。
5.試述數據庫系統的特點。
數據庫系統的主要特點有:
一、數據結構化:數據庫系統實現整體數據的結構化,這是數據庫的主要特征之一,也是數據庫系統與文件系統的本質區別。
*解析:注意這里“整體”兩個字。在數據庫系統中,數據不再針對某一個應用,而是面向全組織,具有整體的結構化。不僅數據是結構化的,而且數據的存取單位即一次可以存取數據的大小也很靈活。可以小到某一個數據項(如一個學生的姓名),大到一組記錄(成千上萬個學生記錄)。而在文件系統中,數據的存取單位只有一個:記錄。如一個學生的完整記錄。
二、數據的共享性高,冗余度低,易擴充 :數據庫的數據不再面向某個應用而是面向整個系統,因此可以被多個用戶、多個應用、用多種不同的語言共享使用。由于數據面向整個系統,是有結構的數據,不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數據庫系統彈性大,易于擴充。
*解析:
數據共享可以大大減少數據冗余,節約存儲空間,同時還能夠避免數據之間的不相容性與不一致性。
所謂“數據面向某個應用”是指數據結構是針對某個應用設計的,只被這個應用程序或應用系統使用。可以說數據是某個應用的“私有資源”。
所謂“彈性大”是指系統容易擴充也容易收縮,即應用增加或減少時不必修改整個數據庫的結構,或者只要做很少的修改。
我們可以取整體數據的各種子集用于不同的應用系統,當應用需求改變或增加時,只要重新選取不同的子集或加上一部分數據便可以滿足新的需求。
三、數據獨立性高:數據獨立性包括數據的物理獨立性和數據的邏輯獨立性。數據庫管理系統的模式結構和二級映象功能保證了數據庫中的數據具有很高的物理獨立性和邏輯獨立性。
*解析:
所謂“獨立性”即相互不依賴。數據獨立性是指數據和程序相互不依賴。即數據的邏輯結構或物理結構改變了,程序不會跟著改變。數據與程序的獨立,把數據的定義從程序中分離出去,加上數據的存取又由DBMS負責,簡化了應用程序的編制,大大減少了應用程序的維護和修改。
四、數據由DBMS統一管理和控制:數據庫的共享是并發的共享,即多個用戶可以同時存取數據庫中的數據甚至可以同時存取數據庫中同一個數據。為此,DBMS必須提供統一的數據控制功能,包括數據的安全性保護,數據的完整性檢查,并發控制和數據庫恢復。
*解析:
DBMS數據控制功能包括四個方面:
數據的安全性保護:保護數據以防止不合法的使用造成的數據的泄密和破壞;
數據的完整性檢查:將數據控制在有效的范圍內或保證數據之間滿足一定的關系;
并發控制:對多用戶的并發操作加以控制和協調,保證并發操作的正確性;
數據庫恢復:當計算機系統發生硬件故障、軟件故障,或者由于操作員的失誤以及故意的破壞影響數據庫中數據的正確性,甚至造成數據庫部分或全部數據的丟失時,能將數據庫從錯誤狀態恢復到某一已知的正確狀態(亦稱為完整狀態或一致狀態)。
下面我們可以得到“什么是數據庫”的一個定義:
數據庫是長期存儲在計算機內有組織的大量的共享的數據集合。它可以供各種用戶共享,具有最小冗余度和較高的數據獨立性。DBMS在數據庫建立、運用和維護時對數據庫進行統一控制,以保證數據的完整性、安全性,并在多用戶同時使用數據庫時進行并發控制,在發生故障后對系統進行恢復。
數據庫系統的出現使信息系統從以加工數據的程序為中心轉向圍繞共享的數據庫為中心的新階段。
6.數據庫管理系統的主要功能有哪些?
①數據庫定義功能;
②數據存取功能;
③數據庫運行管理;
④數據庫的建立和維護功能。
7.試述數據模型的概念、數據模型的作用和數據模型的三個要素。
數據模型是數據庫中用來對現實世界進行抽象的工具,是數據庫中用于提供信息表示和操作手段的形式構架。
一般地講,數據模型是嚴格定義的概念的集合。這些概念精確地描述系統的靜態特性、動態特性和完整性約束條件。因此數據模型通常由數據結構、數據操作和完整性約束三部分組成。
①數據結構:是所研究的對象類型的集合,是對系統的靜態特性的描述。
②數據操作:是指對數據庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關的操作規則,是對系統動態特性的描述。
③數據的約束條件:是完整性規則的集合,完整性規則是給定的數據模型中數據及其聯系所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。
*解析:
數據模型是數據庫系統中最重要的概念之一。同學們必須通過《概論》的學習真正掌握
數據模型的概念和作用。
數據模型是數據庫系統的基礎。任何一個DBMS都以某一個數據模型為基礎,或者說支持某一個數據模型。
數據庫系統中模型有不同的層次。根據模型應用的不同目的,可以將模型分成兩類或說兩個層次:一是概念模型,是按用戶的觀點來對數據和信息建模,用于信息世界的建模,強調語義表達能力,概念簡單清晰;另一是數據模型,是按計算機系統的觀點對數據建模,用于機器世界,人們可以用它定義、操縱數據庫中的數據。一般需要有嚴格的形式化定義和一組嚴格定義了語法和語義的語言,并有一些規定和限制,便于在機器上實現。
8.試述概念模型的作用。
概念模型實際上是現實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是現實世界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具,也是數據庫設計人員和用戶之間進行交流的語言。
9.定義并解釋概念模型中以下術語:
實體,實體型,實體集,屬性,碼,實體聯系圖(E-R圖)
實體:客觀存在并可以相互區分的事物叫實體。
實體型:具有相同屬性的實體具有相同的特征和性質,用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型。
實體集:同型實體的集合稱為實體集。
屬性:實體所具有的某一特性,一個實體可由若干個屬性來刻畫。
碼:唯一標識實體的屬性集稱為碼。
實體聯系圖:E-R圖提供了表示實體型、屬性和聯系的方法:
? 實體型:用矩形表示,矩形框內寫明實體名。
? 屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來。
?聯系:用菱形表示,菱形框內寫明聯系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型(1 : 1,1 : n或m : n)。
10.試給出三個實際部門的E-R圖,要求實體型之間具有一對一,一對多,多對多各種不同的聯系。
關系數據庫
一、選擇題
1.下面的選項不是關系數據庫基本特征的是()。
A.不同的列應有不同的數據類型
B.不同的列應有不同的列名
C.與行的次序無關
D.與列的次序無關
2.一個關系只有一個()。
A.候選碼
B.外碼
C.超碼
D.主碼
3.關系模型中,一個碼是()。
A.可以由多個任意屬性組成 B.至多由一個屬性組成
C.可有多個或者一個其值能夠唯一表示該關系模式中任何元組的屬性組成D.以上都不是
4.現有如下關系:
患者(患者編號,患者姓名,性別,出生日起,所在單位)
醫療(患者編號,患者姓名,醫生編號,醫生姓名,診斷日期,診斷結果)
其中,醫療關系中的外碼是()。
A.患者編號
B.患者姓名
C.患者編號和患者姓名
D.醫生編號和患者編號
5.現有一個關系:借閱(書號,書名,庫存數,讀者號,借期,還期),假如同一本書允許一個讀者多次借閱,但不能同時對一種書借多本,則該關系模式的外碼是()。
A.書號
B.讀者號
C.書號+讀者號
D.書號+讀者號+借期
6.關系模型中實現實體間 N:M 聯系是通過增加一個()。
A.關系實現
B.屬性實現
C.關系或一個屬性實現
D.關系和一個屬性實現
7.關系代數運算是以()為基礎的運算。
A.關系運算
B.謂詞演算
C.集合運算
D.代數運算
8.關系數據庫管理系統應能實現的專門關系運算包括()。
A.排序、索引、統計
B.選擇、投影、連接 C.關聯、更新、排序
D.顯示、打印、制表
9.五種基本關系代數運算是()。
A.∪ - × σ π
B.∪ - σ π
C.∪ ∩ × σ π
D.∪ ∩ σ π
10.關系代數表達式的優化策略中,首先要做的是()。
A.對文件進行預處理
B.盡早執行選擇運算
C.執行笛卡爾積運算
D.投影運算
11.關系數據庫中的投影操作是指從關系中()。
A.抽出特定記錄
B.抽出特定字段
C.建立相應的影像
D.建立相應的圖形
12.從一個數據庫文件中取出滿足某個條件的所有記錄形成一個新的數據庫文件的操作是()操作。
A.投影
B.聯接
C.選擇
D.復制
13.關系代數中的聯接操作是由()操作組合而成。
A.選擇和投影 B.選擇和笛卡爾積
C.投影、選擇、笛卡爾積
D.投影和笛卡爾積
14.自然聯接是構成新關系的有效方法。一般情況下,當對關系R和S是用自然聯接時,要求R和S含有一個或者多個共有的()。
A.記錄
B.行
C.屬性
D.元組
15.假設有關系R和S,在下列的關系運算中,()運算不要求:“R和S具有相同的元數,且它們的對應屬性的數據類型也相同”。
A.R∩S
B.R∪S
C.R-S
D.R×S
16.假設有關系R和S,關系代數表達式R-(R-S)表示的是()。
A.R∩S
B.R∪S
C.R-S
D.R×S
17.下面列出的關系代數表達是中,那些式子能夠成立()。
ⅰ.σf1(σf2(E))= σf1∧f2(E)
ⅱ.E1∞E2 = E2∞E1
ⅲ.(E1∞E2)∞E3 = E1∞(E2∞E3)
ⅳ.σf1(σf2(E))=σf2(σf1(E))
A.全部
B.ⅱ和ⅲ C.沒有
D.ⅰ和ⅳ
18.下面四個關系表達式是等價的,是判別它們的執行效率()。
E1 =πA(σ B=C ∧ D=E′(R×S))
E2 =πA(σ B=C(R× σD=E′(S))
E3 =πA(R∞B=CσD=E′(S))
E3 =πA(σD=E′(R∞B=C S))
A.E3最快
B.E2最快 C.E4最快 D.E1最快
19.有關系SC(S_ID,C_ID,AGE,SCORE),查找年齡大于22歲的學生的學號和分數,正確的關系代數表達式是()。
ⅰ.πS_ID,SCORE(σ age>22(SC))
ⅱ.σ age>22(πS_ID,SCORE(SC))
ⅲ.πS_ID,SCORE(σ age>22(πS_ID,SCORE,AGE(SC)))
A.ⅰ和 ⅱ
B.只有ⅱ正確
C.只有 ⅰ正確
D.ⅰ和ⅲ正確
選擇題參考答案:(1)A(2)D(3)C(4)A(5)D(6)A(7)C(8)B(9)A(10)B
(11)B(12)C(13)B(14)C(15)D(16)A(17)C(18)A(19)D
二、簡答題
1.試述關系模型的三個組成部分。
2.試述關系數據語言的特點和分類。
3.設有一個SPJ數據庫,包括S,P,J,SPJ四個關系模式:
S(SNO,SNAME,STATUS,CITY);
P(PNO,PNAME,COLOR,WEIGHT);
J(JNO,JNAME,CITY);
SPJ(SNO,PNO,JNO,QTY);
供應商表S由供應商代碼(SNO)、供應商姓名(SNAME)、供應商狀態(STATUS)、供應商所在城市(CITY)組成;零件表P由零件代碼(PNO)、零件名(PNAME)、顏色(COLOR)、重量(WEIGHT)組成;工程項目表J由工程項目代碼(JNO)、工程項目名(JNAME)、工程項目所在城市(CITY)組成;供應情況表SPJ由供應商代碼(SNO)、零件代碼(PNO)、工程項目代碼(JNO)、供應數量(QTY)組成,表示某供應商供應某種零件給某工程項目的數量為QTY。
試用關系代數完成如下查詢:
(1)求供應工程J1零件的供應商號碼SNO;
(2)求供應工程J1零件P1的供應商號碼SNO;
(3)求供應工程J1零件為紅色的供應商號碼SNO;
(4)求沒有使用天津供應商生產的紅色零件的工程號JNO;
(5)求至少用了供應商S1所供應的全部零件的工程號JNO。
4.定義并理解下列術語,說明它們之間的聯系與區別:
(1)域,笛卡爾積,關系,元組,屬性
(2)主碼,候選碼,外碼
(3)關系模式,關系,關系數據庫
5.試述關系模型的完整性規則。在參照完整性中,為什么外碼屬性的值有時也可以為空?什么情況下才可以為空?
6.試述等值連接與自然連接的區別和聯系。
7.關系代數的基本運算有哪些?
8.試用關系代數的基本運算來表示其他運算。
SQL語言
一、選擇題
1.SQL語言是()的語言,容易學習。
A.過程化
B.非過程化
C.格式化
D.導航式
2.SQL語言的數據操縱語句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的語句是()。
A.SELECT B.INSERT
C.UPDATE D.DELETE
3.在視圖上不能完成的操作是()。
A.更新視圖
B.查詢
C.在視圖上定義新的表
D.在視圖上定義新的視圖
4.SQL語言集數據查詢、數據操縱、數據定義和數據控制功能于一體,其中,CREATE、DROP、ALTER語句是實現哪種功能()。
A.數據查詢
B.數據操縱
C.數據定義 D.數據控制
5.SQL語言中,刪除一個視圖的命令是()。
A.DELETE
B.DROP
C.CLEAR
D.REMOVE
6.在SQL語言中的視圖VIEW是數據庫的()。
A.外模式
B.模式
C.內模式
D.存儲模式
7.下列的SQL語句中,()不是數據定義語句。
A.CREATE TABLE B.DROP VIEW
C.CREATE VIEW D.GRANT
8.若要撤銷數據庫中已經存在的表S,可用()。
A.DELETE TABLE S B.DELETE S
C.DROP TABLE S D.DROP S
9.若要在基本表S中增加一列CN(課程名),可用()。
A.ADD TABLE S(CN CHAR(8))
B.ADD TABLE S ALTER(CN CHAR(8))
C.ALTER TABLE S ADD(CN CHAR(8))D.ALTER TABLE S(ADD CN CHAR(8))
10.學生關系模式 S(S#,Sname,Sex,Age),S的屬性分別表示學生的學號、姓名、性別、年齡。要在表S中刪除一個屬性“年齡”,可選用的SQL語句是()。
A.DELETE Age from S B.ALTER TABLE S DROP Age
C.UPDATE S Age D.ALTER TABLE S ‘Age’
11.有關系S(S#,SNAME,SAGE),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是學生號,SNAME是學生姓名,SAGE是學生年齡,C#是課程號,CNAME是課程名稱。要查詢選修“ACCESS”課的年齡不小于20的全體學生姓名的SQL語句是SELECT SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內容是()。
A.S.S# = SC.S# and C.C# = SC.C# and SAGE>=20 and CNAME=‘ACCESS’
B.S.S# = SC.S# and C.C# = SC.C# and SAGE in>=20 and CNAME in ‘ACCESS’
C.SAGE in>=20 and CNAME in ‘ACCESS’
D.SAGE>=20 and CNAME=’ ACCESS’
12.設關系數據庫中一個表S的結構為S(SN,CN,grade),其中SN為學生名,CN為課程名,二者均為字符型;grade為成績,數值型,取值范圍0-100。若要把“張二的化學成績80分”插入S中,則可用()。
A.ADD INTO S VALUES(’張二’,’化學’,’80’)
B.INSERT INTO S VALUES(’張二’,’化學’,’80’)
C.ADD
INTO S VALUES(’張二’,’化學’,80)D.INSERT INTO S VALUES(’張二’,’化學’,80)
13.設關系數據庫中一個表S的結構為:S(SN,CN,grade),其中SN為學生名,CN為課程名,二者均為字符型;grade為成績,數值型,取值范圍0-100。若要更正王二的化學成績為85分,則可用()。
A.UPDATE S SET grade=85 WHERE SN=’王二’ AND CN=’化學’
B.UPDATE S SET grade=’85’WHERE SN=’王二’ AND CN=’化學’
C.UPDATE grade=85 WHERE SN=’王二’ AND CN=’化學’
D.UPDATE grade=’85’WHERE SN=’王二’ AND CN=’化學’
14.在SQL語言中,子查詢是()。
A.返回單表中數據子集的查詢語言
B.選取多表中字段子集的查詢語句
C.選取單表中字段子集的查詢語句
D.嵌入到另一個查詢語句之中的查詢語句
15.SQL是一種()語言。
A.高級算法
B.人工智能
C.關系數據庫 D.函數型
16.有關系S(S#,SNAME,SEX),C(C#,CNAME),SC(S#,C#,GRADE)。其中S#是學生號,SNAME是學生姓名,SEX是性別,C#是課程號,CNAME是課程名稱。要查詢選修“數據庫”課的全體男生姓名的SQL語句是SELECT SNAME FROM S,C,SC WHERE子句。這里的WHERE子句的內容是()。
A.S.S# = SC.S# and C.C# = SC.C# and SEX=’男’ and CNAME=’數據庫’
B.S.S# = SC.S# and C.C# = SC.C# and SEX in’男’and CNAME in’數據庫’
C.SEX ’男’ and CNAME ’ 數據庫’
D.S.SEX=’男’ and CNAME=’ 數據庫’
17.若用如下的SQL語句創建了一個表SC:
CREATE TABLE SC(S# CHAR(6)NOT NULL,C# CHAR(3)NOT NULL,SCORE INTEGER,NOTE CHAR(20));向SC表插入如下行時,()行可以被插入。
A.(’201009’,’111’,60,必修)
B.(’200823’,’101’,NULL,NULL)
C.(NULL,’103’,80,’選修’)
D.(’201132’,NULL,86,’ ’)
18.假設學生關系S(S#,SNAME,SEX),課程關系C(C#,CNAME),學生選課關系SC(S#,C#,GRADE)。要查詢選修“Computer”課的男生姓名,將涉及到關系()。
A.S B.S,SC C.C,SC D.S,C,SC
選擇題參考答案:(1)B(2)A(3)C(4)C(5)B(6)A(7)D(8)C(9)C(10)B
(11)A(12)D(13)A(14)D(15)C(16)A(17)B(18)D
二、簡答題
1.試述SQL語言的特點。
答:(1)綜合統一。SQL語言集數據定義語言DDL、數據操縱語言DML、數據控制語言DCL的功能于一體。
(2)高度非過程化。用SQL語言進行數據操作,只要提出“做什么”,而無須指明“怎么做”,因此無需了解存取路徑,存取路徑的選擇以及SQL語句的操作過程由系統自動完成。
(3)面向集合的操作方式。SQL語言采用集合操作方式,不僅操作對象、查找結果可以是元組的集合,而且一次插入、刪除、更新操作的對象也可以是元組的集合。
(4)以同一種語法結構提供兩種使用方式。SQL語言既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用于聯機交互的使用方式,也能夠嵌入到高級語言程序中,供程序員設計程序時使用。
(5)語言簡捷,易學易用。
2.試述SQL的定義功能。
答: SQL的數據定義功能包括定義表、定義視圖和定義索引。
SQL語言使用CREATE TABLE語句定義建立基本表,;ALTER TABLE語句修改基本表定義,DROP TABLE語句刪除基本表;建立索引使用CREATE INDEX語句建立索引,DROP INDEX語句刪除索引表;SQL語言使用CREATE VIEW命令建立視圖,DROP VIEW語句刪除視圖。
3.用SQL語句建立第3章習題3中的四個表。
答:對于S表:S(SNO,SNAME,STATUS,CITY);
建S表:CREATE TABLE S(SNO CHAR(3),SNAME CHAR(10),STATUS CHAR(2),CITY CHAR(10));
P(PNO,PNAME,COLOR,WEIGHT);
建P表:CREATE TABLE P(PNO CHAR(3),PNAME CHAR(10),COLOR CHAR(4),WEIGHT INT);
J(JNO,JNAME,CITY);
建J表:CREATE TABLE J(JNO CHAR(3),JNAME CHAR(10),CITY CHAR(10));
SPJ(SNO,PNO,JNO,QTY);
建SPJ表:CREATE TABLE SPJ(SNO CHAR(3),PNO CHAR(3),JNO CHAR(3),QTY INT);
4.針對上題中建立的四個表試用SQL語言完成第3章習題3中的查詢。
答:(1)求供應工程J1零件的供應商號碼SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1’;
(2)求供應工程J1零件P1的供應商號碼SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1’
AND PNO=‘P1’;
(3)求供應工程J1零件為紅色的供應商號碼SNO;
SELECT SNO
FROM SPJ
WHERE JNO=‘J1’
AND PNO IN
(SELECT PNO
FROM P
WHERE COLOR=‘紅’);
或
SELECT SNO
FROM SPJ,P
WHERE JNO=‘J1’
AND SPJ.PNO=P.PNO
AND COLOR=‘紅’;
(4)求沒有使用天津供應商生產的紅色零件的工程號JNO;
解析:
用SQL語言表示如下:
SELECT JNO
FROM J
WHERE NOT EXISTS
(SELECT *
FROM SPJ
WHERE SPJ.JNO=J.JNO
AND SNO IN
(SELECT SNO
FROM S
WHERE CITY=‘天津’)
AND PNO IN
(SELECT PNO
FROM P
WHERE COLOR=‘紅’));
或
SELECT JNO
FROM J
WHERE NOT EXISTS
(SELECT *1
FROM SPJ, S, P
WHERE SPJ.JNO=J.JNO
AND SPJ.SNO=S.SNO
AND SPJ.PNO=P.PNO
AND S.CITY=‘天津’
AND P.COLOR=‘紅’);
注意:從 J 表入手,以包含那些尚未使用任何零件的工程號。
(5)求至少用了供應商S1所供應的全部零件的工程號JNO。
解析:
用SQL語言表示如下:
SELECT DISTINCT JNO
FROM SPJ SPJZ
WHERE NOT EXISTS
(SELECT *
FROM SPJ SPJX
WHERE SNO='S1'
AND NOT EXISTS
(SELECT *
FROM SPJ SPJY
WHERE SPJY.PNO=SPJX.PNO
AND SPJY.JNON=SPJZ.JNO
AND SPJY.SNO=’S1’));
AND SPJY.SNO='S1'));
5.針對習題3中的四個表試用SQL語言完成以下各項操作:
(1)找出所有供應商的姓名和所在城市。
(2)找出所有零件的名稱、顏色、重量。
(3)找出使用供應商S1所供應零件的工程號碼。
(4)找出工程項目J2使用的各種零件的名稱及其數量。
(5)找出上海廠商供應的所有零件號碼。
(6)找出使用上海產的零件的工程名稱。
(7)找出沒有使用天津產的零件的工程號碼。
(8)把全部紅色零件的顏色改成藍色。
(9)由S5供給J4的零件P6改為由S3供應,請作必要的修改。
(10)從供應商關系中刪除S2的記錄,并從供應情況關系中刪除相應的記錄。
(11)請將(S2,J6,P4,200)插入供應情況關系。
答:
(1)找出所有供應商的姓名和所在城市。
SELECT SNAME, CITY
FROM S;
(2)找出所有零件的名稱、顏色、重量。
SELECT PNAME, COLOR, WEIGHT
FROM P;
(3)找出使用供應商S1所供應零件的工程號碼。
SELECT JNO
FROM SPJ
WHERE SNO=‘S1’;
(4)找出工程項目J2使用的各種零件的名稱及其數量。
SELECT P.PNAME, SPJ.QTY
FROM P, SPJ
WHERE P.PNO=SPJ.PNO
AND SPJ.JNO='J2';
(5)找出上海廠商供應的所有零件號碼。
SELECT DISTINCT PNO
FROM SPJ
WHERE SNO IN
(SELECT SNO
FROM S
WHERE CITY='上海');
(6)找出使用上海產的零件的工程名稱。
SELECT JNAME
FROM J, SPJ, S
WHERE J.JNO=SPJ.JNO
AND SPJ.SNO=S.SNO
AND S.CITY='上海';
或
SELECT JNAME
FROM J
WHERE JNO IN
(SELECT JNO
FROM SPJ, S
WHERE SPJ.SNO=S.SNO
AND S.CITY='上海');
(7)找出沒有使用天津產的零件的工程號碼。
SELECT JNO
FROM J
WHERE NOT EXISTS
(SELECT *
FROM SPJ
WHERE SPJ.JNO=J.JNO AND SNO IN
(SELECT SNO
FROM S
WHERE CITY=‘天津’));
或
SELECT JNO
FROM J
WHERE NOT EXISTS
(SELECT *1
FROM SPJ, S
WHERE SPJ.JNO=J.JNO AND SPJ.SNO=S.SNO AND S.CITY=‘天津’);
(8)把全部紅色零件的顏色改成藍色。
UPDATE P
SET COLOR='藍'
WHERE COLOR='紅';
(9)由S5供給J4的零件P6改為由S3供應,請作必要的修改。
UPDATE SPJ
SET SNO='S3'
WHERE SNO='S5' AND JNO='J4' AND PNO='P6';
(10)從供應商關系中刪除S2的記錄,并從供應情況關系中刪除相應的記錄。
DELETE
FROM SPJ
WHERE SNO='S2';
或
DELETE
FROM S
WHERE SNO='S2';
解析:注意刪除順序,應該先從SPJ表中刪除供應商S2所供應零件的記錄,然后從從S表中刪除S2。
(11)請將(S2,J6,P4,200)插入供應情況關系。
INSERT INTO SPJ(SNO, JNO, PNO, QTY)
VALUES(S2,J6,P4,200);
或
INSERT INTO SPJ
VALUES(S2,P4,J6,200);
6.什么是基本表?什么是視圖?兩者的區別和聯系是什么?
答:基本表是本身獨立存在的表,在SQL中一個關系就對應一個表。
視圖是從一個或幾個基本表導出的表。視圖本身不獨立存儲在數據庫中,是一個虛表。即數據庫中只存放視圖的定義而不存放視圖對應的數據,這些數據仍存放在導出視圖的基本表中。視圖在概念上與基本表等同,用戶可以如同基本表那樣使用視圖,可以在視圖上再定義視圖。
7.試述視圖的優點。
答:(1)視圖能夠簡化用戶的操作。
(2)視圖使用戶能以多種角度看待同一數據。
(3)視圖對重構數據庫提供了一定程度的邏輯獨立性。
(4)視圖能夠對機密數據提供安全保護。
8.所有的視圖是否都可以更新?為什么?
答:不是。視圖是不實際存儲數據的虛表,因此對視圖的更新,最終要轉換為對基本表的更新。因為有些視圖的更新不能唯一地有意義地轉換成對相應基本表的更新,所以,并不是所有的視圖都是可更新的。如《概論》3.5.1中的視圖S_G(學生的學號及他的平均成績)
CREAT VIEW S_G(Sno,Gavg)
AS SELECT Sno,AVG(Grade)
FROM SC
GROUP BY Sno;
要修改平均成績,必須修改各科成績,而我們無法知道哪些課程成績的變化導致了平均成績的變化。
9.哪類視圖是可以更新的,哪類視圖是不可更新的? 各舉一例說明。
答:基本表的行列子集視圖一般是可更新的。如《概論》3.5.3中的例1。
若視圖的屬性來自集函數、表達式,則該視圖肯定是不可以更新的。
如《概論》3.5.3中的S_G視圖。
10.試述某個你熟悉的實際系統中對視圖更新的規定。
答:(略)
解析:不同的系統對視圖更新的規定是不同的,讀者必須了解你所用系統對視圖更新的規定。
11.請為三建工程項目建立一個供應情況的視圖,包括供應商代碼(SNO)、零件
代碼(PNO)、供應數量(QTY)。針對該視圖完成下列查詢:
(1)找出三建工程項目使用的各種零件代碼及其數量。
(2)找出供應商S1的供應情況。
答:建視圖:
CREATE VIEW V_SPJ AS
SELECT SNO, PNO, QTY
FROM SPJ
WHERE JNO=
(SELECT JNO
FROM J
WHERE JNAME='三建');
對該視圖查詢:
(1)找出三建工程項目使用的各種零件代碼及其數量。
SELECT PNO, QTY
FROM V_SPJ;
(2)找出供應商S1的供應情況。
SELECT PNO, QTY /* S1供應三建工程的零件號和對應的數量*/
FROM V_SPJ
WHERE SNO='S1';
關系系統及其優化
一、選擇題
1.概念模型是現實世界的第一層抽象,這一類最著名的模型是()。
A.層次模型 B.關系模型 C.網狀模型 D.實體-關系模型
2.區分不同實體的依據是()。
A.名稱 B.屬性 C.對象 D.概念
3.關系數據模型是目前最重要的一種數據模型,它的三個要素分別為()。
A.實體完整、參照完整、用戶自定義完整
B.數據結構、關系操作、完整性約束
C.數據增加、數據修改、數據查詢
D.外模式、模式、內模式
4.在()中一個結點可以有多個雙親,節點之間可以有多種聯系。
A.網狀模型 B.關系模型
C.層次模型 D.以上都有
5.()的存取路徑對用戶透明,從而具有更高的數據獨立性、更好的安全保密性,也簡化了程序員的工作和數據庫開發建立的工作。
A.網狀模型 B.關系模型
D.層次模型 D.以上都有
6.在關系數據庫中,要求基本關系中所有的主屬性上不能有空值,其遵守的約束規則是()。
A.數據依賴完整性規則 B.用戶定義完整性規則
C.實體完整性規則 D.域完整性規則
選擇題參考答案:(1)D(2)B(3)B(4)A(5)B(6)C
二、簡答題
1.試述關系模型的三個組成部分。
答:關系模型由關系數據結構、關系操作集合和關系完整性約束三部分組成。
2.試述關系數據語言的特點和分類。
答:關系數據語言可以分為三類:
關系代數語言 例如ISBL
關系演算語言(元組關系演算語言 例如APLHA,QUEL 和 域關系演算語言 例如QBE)
具有關系代數和關系演算雙重特點的語言 例如SQL
這些關系數據語言的共同特點是,具有完備的表達能力,是非過程化的集合操作語言,功能強,能夠嵌入高級語言中使用。
3.定義并理解下列術語,說明它們之間的聯系與區別:
(1)域,關系,元組,屬性
答: 域:域是一組具有相同數據類型的值的集合。
關系:在域D1,D2,?,Dn上笛卡爾積D1×D2×?×Dn的子集稱為關系,表示為
R(D1,D2,?,Dn)
元組:關系中的每個元素是關系中的元組。
屬性:關系也是一個二維表,表的每行對應一個元組,表的每列對應一個域。由于域可
以相同,為了加以區分,必須對每列起一個名字,稱為屬性(Attribute)。
(2)主碼,候選碼,外部碼
答: 候選碼:若關系中的某一屬性組的值能唯一地標識一個元組,則稱該屬性組為候選碼(Candidate key)。
主碼:若一個關系有多個候選碼,則選定其中一個為主碼(Primary key)。
外部碼:設F是基本關系R的一個或一組屬性,但不是關系R的碼,如果F與基本關系S的主碼Ks相對應,則稱F是基本關系R的外部碼(Foreign key),簡稱外碼。
基本關系R稱為參照關系(Referencing relation),基本關系S稱為被參照關系(Referenced relation)或目標關系(Target relation)。關系R和S可以是相同的關系。
(3)關系模式,關系,關系數據庫
關系模式:關系的描述稱為關系模式(Relation Schema)。它可以形式化地表示為:
R(U,D,dom,F)
其中R為關系名,U為組成該關系的屬性名集合,D為屬性組U中屬性所來自的域,dom為屬性向域的映象集合,F為屬性間數據的依賴關系集合。
關系:在域D1,D2,?,Dn上笛卡爾積D1×D2×?×Dn的子集稱為關系,表示為
R(D1,D2,?,Dn)
關系是關系模式在某一時刻的狀態或內容。關系模式是靜態的、穩定的,而關系是動態的、隨時間不斷變化的,因為關系操作在不斷地更新著數據庫中的數據。
關系數據庫:關系數據庫也有型和值之分。關系數據庫的型也稱為關系數據庫模式,是對關系數據庫的描述,它包括若干域的定義以及在這些域上定義的若干關系模式。關系數據庫的值是這些關系模式在某一時刻對應的關系的集合,通常就稱為關系數據庫。
4.試述關系模型的完整性規則。在參照完整性中,為什么外部碼屬性的值也可以為空?什么情況下才可以為空?
答: 關系模型的完整性規則是對關系的某種約束條件。關系模型中可以有三類完整性約束:實體完整性、參照完整性和用戶定義的完整性。
其中實體完整性和參照完整性是關系模型必須滿足的完整性約束條件,被稱作是關系的兩個不變性,應該由關系系統自動支持。
1)實體完整性規則:若屬性A是基本關系R的主屬性,則屬性A不能取空值。
2)參照完整性規則:若屬性(或屬性組)F是基本關系R的外碼,它與基本關系S的主碼Ks相對應(基本關系R和S不一定是不同的關系),則對于R中每個元組在F上的值必
須為: ? 或者取空值(F的每個屬性值均為空值);
? 或者等于S中某個元組的主碼值。
3)用戶定義的完整性是針對某一具體關系數據庫的約束條件。它反映某一具體應用所涉及的數據必須滿足的語義要求。
在參照完整性中,外部碼屬性的值可以為空,它表示該屬性的值尚未確定。但前提條件是該外部碼屬性不是其所在關系的主屬性。
例如,在下面的“學生”表中,“專業號”是一個外部碼,不是學生表的主屬性,可以為空。其語義是,該學生的專業尚未確定。
學生(學號,姓名,性別,專業號,年齡)
專業(專業號,專業名)
而在下面的“選修”表中的“課程號”雖然也是一個外部碼屬性,但它又是“選修”表的主屬性,所以不能為空。因為關系模型必須滿足實體完整性。
課程(課程號,課程名,學分)
選修(學號,課程號,成績)
5.等值連接與自然連接的區別是什么?
答:連接運算中有兩種最為重要也最為常用的連接,一種是等值連接(equi-join),另一種是自然連接(Natural join)。
θ為“=”的連接運算稱為等值連接。
它是從關系R與S的笛卡爾積中選取A、B屬性值相等的那些元組。即等值連接為:
R A=B S = { tr ts| tr∈R ∧ ts∈S ∧ tr[A] = ts[B] }
自然連接(Natural join)是一種特殊的等值連接,它要求兩個關系中進行比較的分量必須是相同的屬性組,并且要在結果中把重復的屬性去掉。即若R和S具有相同的屬性組B,則自然連接可記作:
R S = { tr ts| tr∈R ∧ ts∈S ∧ tr[B] = ts[B] }
關系數據理論
一、選擇題
1.為了設計出性能較優的關系模式,必須進行規范化,規范化主要的理論依據是()。
A.關系規范化理論 B.關系代數理論
C.數理邏輯 D.關系運算理論
2.規范化理論是關系數據庫進行邏輯設計的理論依據,根據這個理論,關系數據庫中的關系必須滿足:每一個屬性都是()。
A.長度不變的 B.不可分解的 C.互相關聯的 D.互不相關的
3.已知關系模式R(A,B,C,D,E)及其上的函數相關性集合F={A→D,B→C,E→A },該關系模式的候選關鍵字是()。
A.AB B.BE
C.CD D.DE
4.設學生關系S(SNO,SNAME,SSEX,SAGE,SDPART)的主鍵為SNO,學生選課關系SC(SNO,CNO,SCORE)的主鍵為SNO和CNO,則關系R(SNO,CNO,SSEX,SAGE,SDPART,SCORE)的主鍵為SNO和CNO,其滿足()。
A.1NF B.2NF C.3NF D.BCNF
5.設有關系模式W(C,P,S,G,T,R),其中各屬性的含義是:C表示課程,P表示教師,S表示學生,G表示成績,T表示時間,R表示教室,根據語義有如下數據依賴集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },關系模式W的一個關鍵字是()。
A.(S,C)B.(T,R)
C.(T,P)D.(T,S)
6.關系模式中,滿足2NF的模式()。
A.可能是1NF B.必定是1NF
C.必定是3NF
D.必定是BCNF
7.關系模式R中的屬性全是主屬性,則R的最高范式必定是()。
A.1NF B.2NF
C.3NF D.BCNF
8.消除了部分函數依賴的1NF的關系模式,必定是()。
A.1NF B.2NF
C.3NF D.BCNF
9.如果A->B ,那么屬性A和屬性B的聯系是()。
A.一對多
B.多對一
C.多對多 D.以上都不是
10.關系模式的候選關鍵字可以有1個或多個,而主關鍵字有()。
A.多個
B.0個
C.1個
D.1個或多個
11.候選關鍵字的屬性可以有()。
A.多個
B.0個
C.1個
D.1個或多個
12.關系模式的任何屬性()。
A.不可再分
B.可以再分
C.命名在關系模式上可以不唯一
D.以上都不是
13.設有關系模式W(C,P,S,G,T,R),其中各屬性的含義是:C表示課程,P表示教師,S表示學生,G表示成績,T表示時間,R表示教室,根據語義有如下數據依賴集:D={ C→P,(S,C)→G,(T,R)→C,(T,P)→R,(T,S)→R },若將關系模式W分解為三個關系模式W1(C,P),W2(S,C,G),W2(S,T,R,C),則W1的規范化程序最高達到()。
A.1NF B.2NF
C.3NF D.BCNF
14.在關系數據庫中,任何二元關系模式的最高范式必定是()。
A.1NF B.2NF
C.3NF D.BCNF
15.在關系規范式中,分解關系的基本原則是()。
I.實現無損連接
II.分解后的關系相互獨立
III.保持原有的依賴關系
A.Ⅰ和Ⅱ
B.Ⅰ和Ⅲ
C.Ⅰ
D.Ⅱ
16.不能使一個關系從第一范式轉化為第二范式的條件是()。
A.每一個非屬性都完全函數依賴主屬性
B.每一個非屬性都部分函數依賴主屬性
C.在一個關系中沒有非屬性存在 D.主鍵由一個屬性構成17.任何一個滿足2NF但不滿足3NF的關系模式都不存在()。
A.主屬性對鍵的部分依賴
B.非主屬性對鍵的部分依賴
C.主屬性對鍵的傳遞依賴
D.非主屬性對鍵的傳遞依賴
18.設數據庫關系模式R=(A,B,C,D,E),有下列函數依賴:A→BC,D→E,C→D;下述對R的分解中,哪些分解是R的無損連接分解()。
I.(A,B,C)(C,D,E)
II.(A,B)(A,C,D,E)
III.(A,C)(B,C,D,E)
IV.(A,B)(C,D,E)
A.只有Ⅳ
B.Ⅰ和Ⅱ C.Ⅰ、Ⅱ和Ⅲ
D.都不是
19.設U是所有屬性的集合,X、Y、Z都是U的子集,且Z=U-X-Y。下面關于多值依賴的敘述中,不正確的是()。
A.若X→→Y,則X→→Z
B.若X→Y,則X→→Y C.若X→→Y,且Y′∈Y,則X→→Y′
D.若Z=∮,則X→→Y
20.若關系模式R(U,F)屬于3NF,則()。
A.一定屬于BCNF
B.消除了插入的刪除異常
C.仍存在一定的插入和刪除異常
D.屬于BCNF且消除了插入和刪除異常
21.下列說法不正確的是()。
A.任何一個包含兩個屬性的關系模式一定滿足3NF
B.任何一個包含兩個屬性的關系模式一定滿足BCNF
C.任何一個包含三個屬性的關系模式一定滿足3NF
D.任何一個關系模式都一定有碼
22.設關系模式R(A,B,C),F是R上成立的FD集,F={B→C},則分解P={AB,BC}相對于F()。
A.是無損聯接,也是保持FD的分解
B.是無損聯接,也不保持FD的分解
C.不是無損聯接,但保持FD的分解
D.既不是無損聯接,也不保持FD的分解
23.關系數據庫規范化是為了解決關系數據庫中()的問題而引入的。
A.插入、刪除和數據冗余
B.提高查詢速度
C.減少數據操作的復雜性
D.保證數據的安全性和完整性
24.關系的規范化中,各個范式之間的關系是()。
A.1NF∈2NF∈3NF
B.3NF∈2NF∈1NF
C.1NF=2NF=3NF
D.1NF∈2NF∈BCNF∈3NF
25.數據庫中的冗余數據是指可()的數據。
A.容易產生錯誤
B.容易產生沖突
C.無關緊要
D.由基本數據導出
26.學生表(id,name,sex,age,depart_id,depart_name),存在函數依賴是id→name,sex,age,depart_id;dept_id→dept_name,其滿足()。
A.1NF B.2NF
C.3NF
D.BCNF
27.設有關系模式R(S,D,M),函數依賴集:F={S→D,D→M},則關系模式R的規范化程度最高達到()。
A.1NF B.2NF
C.3NF
D.BCNF 28.設有關系模式R(A,B,C,D),其數據依賴集:F={(A,B)→C,C→D},則關系模式R的規范化程度最高達到()。
A.1NF B.2NF
C.3NF
D.BCNF
29.下列關于函數依賴的敘述中,哪一條是不正確的()。
A.由X→Y,Y→Z,則X→YZ
B.由X→YZ,則X→Y,Y→Z
C.由X→Y,WY→Z,則XW→Z
D.由X→Y,Z∈Y,則X→Z
30.X→Y,當下列哪一條成立時,稱為平凡的函數依賴()。
A.X∈Y B.Y∈X
C.X∩Y=∮
D.X∩Y≠∮
31.關系數據庫的規范化理論指出:關系數據庫中的關系應該滿足一定的要求,最起碼的要求是達到1NF,即滿足()。
A.每個非主鍵屬性都完全依賴于主鍵屬性
B.主鍵屬性唯一標識關系中的元組
C.關系中的元組不可重復
D.每個屬性都是不可分解的32.根據關系數據庫規范化理論,關系數據庫中的關系要滿足第一范式,部門(部門號,部門名,部門成員,部門總經理)關系中,因哪個屬性而使它不滿足第一范式()。
A.部門總經理
B.部門成員
C.部門名 D.部門號
33.有關系模式A(C,T,H,R,S),其中各屬性的含義是: C:課程 T:教員 H:上課時間 R:教室 S:學生。根據語義有如下函數依賴集:F={C→T,(H,R)→C,(H,T)RC,(H,S)→R}
(1)關系模式A的碼是()。
A.C
B.(H,S)
C.(H,R)
D.(H,T)
(2)關系模式A的規范化程度最高達到()。
A.1NF
B.2NF C.3NF D.BCNF
(3)現將關系模式A分解為兩個關系模式A1(C,T),A2(H,R,S),則其中A1的規范化程度達到()。
A.1NF B.2NF
C.3NF
D.BCNF
參考答案:(1)A(2)B(3)B(4)A(5)D(6)B(7)C(8)B(9)B(10)C(11)D(12)A(13)D(14)D(15)B(16)B(17)D(18)B(19)C(20)C(21)C(22)A(23)A(24)A(25)D(26)B(27)B(28)B(29)B(30)B(31)D(32)B(33)B B D
二、簡答題
1.理解并給出下列術語的定義:
函數依賴、部分函數依賴、完全函數依賴、候選碼、主碼、外碼、全碼。
解析:解答本題不能僅僅把《概論》上的定義寫下來。關鍵是真正理解和運用這些概念。
答: 函數依賴:設R(U)是一個關系模式,U是R的屬性集合,X和Y是U的子集。對于R(U)的任意一個可能的關系r,如果r中不存在兩個元組,它們在X上的屬性值相同,而在Y上的屬性值不同,則稱“X函數確定Y”或“Y函數依賴于X”,記作X→Y。
解析:1)函數依賴是最基本的一種數據依賴,也是最重要的一種數據依賴。
2)函數依賴是屬性之間的一種聯系,體現在屬性值是否相等。由上面的定義可以知道,如果X→Y,則r中任意兩個元組,若它們在X上的屬性值相同,那么在Y上的屬性值一定也相同。
3)我們要從屬性間實際存在的語義來確定他們之間的函數依賴,即函數依賴反映了(描述了)現實世界的一種語義。
4)函數依賴不是指關系模式R的在某個時刻的關系(值)滿足的約束條件,而是指R任何時刻的一切關系均要滿足的約束條件。
答: 完全函數依賴、部分函數依賴:在R(U)中,如果X→Y,并且對于X的任何一個真子集X,都有X′→Y,則稱Y對X完全函數依賴;若X→Y,但Y不完全函數依賴于X,則稱Y對X部分函數依賴;
候選碼、主碼: 設K為R(U,F)中的屬性或屬性組合,若K → U則K為R的候選碼。若候選碼多于一個,則選定其中的一個為主碼。
答: 外碼:關系模式R中屬性或屬性組X并非R的碼,但X是另一個關系模式的碼,則稱X是R的外部碼也稱外碼。
全碼:整個屬性組是碼,稱為全碼(All-key)。
2.建立一個關于系、學生、班級、學會等諸信息的關系數據庫。
描述學生的屬性有:學號、姓名、出生年月、系名、班號、宿舍區。
描述班級的屬性有:班號、專業名、系名、人數、入校年份。
描述系的屬性有:系名、系號、系辦公室地點、人數。
描述學會的屬性有:學會名、成立年份、地點、人數。
有關語義如下:一個系有若干專業,每個專業每年只招一個班,每個班有若干學生。一個系的學生住在同一宿舍區。每個學生可參加若干學會,每個學會有若干學生。學生參加某學會有一個入會年份。
請給出關系模式,寫出每個關系模式的極小函數依賴集,指出是否存在傳遞函數依賴,對于函數依賴左部是多屬性的情況討論函數依賴是完全函數依賴,還是部分函數依賴。
指出各關系的候選碼、外部碼,有沒有全碼存在?
答:關系模式: 學生S(S#,SN,SB,DN,C#,SA)
班級C(C#,CS,DN,CNUM,CDATE)
系 D(D#,DN,DA,DNUM)
學會P(PN,DATE1,PA,PNUM)
學生--學會SP(S#,PN,DATE2)
其中,S#—學號,SN—姓名,SB—出生年月,SA—宿舍區
C#—班號,CS—專業名,CNUM—班級人數,CDATE—入校年份
D#—系號,DN—系名,DA—系辦公室地點,DNUM—系人數
PN—學會名,DATE1—成立年月,PA—地點,PNUM—學會人數,DATE2—入會年份
每個關系模式的極小函數依賴集:
S:S#→SN,S#→SB,S#→C#,C#→DN,DN→SA
C:C#→CS,C#→CNUM,C#→CDATE,CS→DN,(CS,CDATE)→C#
D:D#→DN,DN→D#,D#→DA,D#→DNUM
P:PN→DATE1,PN→PA,PN→PNUM
SP:(S#,PN)→DATE2
S中存在傳遞函數依賴: S#→DN, S#→SA, C#→SA
C中存在傳遞函數依賴:C#→DN
(S#,PN)→DATE2 和(CS,CDATE)→C# 均為SP中的函數依賴,是完全函數依賴
關系 候選碼 外部碼 全碼
S S# C#,DN 無
C C#,(CS,CDATE)DN 無
D D#和DN 無 無
P PN 無 無
SP(S#,PN)S#,PN 無
3.試由Armostrong公理系統推導出下面三條推理規則:
(1)合并規則:若X→Z,X→Y,則有X→YZ
(2)偽傳遞規則:由X→Y,WY→Z有XW→Z
(3)分解規則:X→Y,Z 包含于 Y,有X→Z
證:(1)已知X→Z,由增廣律知XY→YZ,又因為X→Y,可得XX→XY→YZ,最后根據傳遞律得X→YZ。
(2)已知X→Y,據增廣律得XW→WY,因為WY→Z,所以XW→WY→Z,通過傳遞律可知XW→Z。
(3)已知Z 包含于 Y,根據自反律知Y→Z,又因為X→Y,所以由傳遞律可得X→Z。
4.下面的結論哪些是正確的,哪些是錯誤的?對于錯誤的結論請給出理由或給出一個反例說明之。
(1)任何一個二目關系都是屬于3NF的。√
(2)任何一個二目關系都是屬于BCNF的。√
(3)任何一個二目關系都是屬于4NF的。√
(5)若R.A→R.B,R.B→R.C,則R.A→R.C √
(6)若R.A→R.B,R.A→R.C,則R.A→R.(B, C)√
(7)若R.B→R.A,R.C→R.A,則R.(B, C)→R.A √
(8)若R.(B, C)→R.A,則R.B→R.A,R.C→R.A ×
反例:關系模式 SC(S#,C#,G)(S#,C#)→G,但是S# → G,C#→G
數據庫設計
一、選擇題
1.數據流程圖是用于描述結構化方法中()階段的工具。
A.概要設計
B.可行性分析
C.程序編碼
D.需求分析
2.數據庫設計中,用E-R圖賴描述信息結構但不涉及信息在計算機中的表示,這是數據庫設計的()。
A.需求分析階段
B.邏輯設計階段
C.概念設計階段
D.物理設計階段
3.在數據庫設計中,將E-R圖轉換成關系數據模型的過程屬于()。
A.需求分析階段
B.邏輯設計階段
C.概念設計階段
D.物理設計階段
4.子模式DDL是用來描述()。
A.數據庫的總體邏輯結構
B.數據庫的局部邏輯結構
C.數據庫的物理存儲結構
D.數據庫的概念結構
5.數據庫設計的概念設計階段,表示概念結構的常用方法和描述工具是()。
A.層次分析法和層次結構圖
B.數據流程分析法和數據流程圖
C.實體聯系法和實體聯系圖
D.結構分析法和模塊結構圖
6.在E-R模型向關系模型轉換時,M:N的聯系轉換為關系模式時,其關鍵字是()。
A.M端實體的關鍵字
B.N端實體的關鍵字
C.M、N端實體的關鍵字組合D.重新選取其他屬性
7.某學校規定,每一個班級最多有50名學生,至少有10名學生;每一名學生必須屬于一個班級。在班級與學生實體的聯系中,學生實體的基數是()。
A.(0,1)
B.(1,1)
C.(1,10)
D.(10,50)
8.在關系數據庫設計中,設計關系模式是數據庫設計中()階段的任務。
A.邏輯設計階段
B.概念設計階段
C.物理設計階段
D.需求分析階段
9.關系數據庫的規范化理論主要解決的問題是()。
A.如何構造合適的數據邏輯結構
B.如何構造合適的數據物理結構
C.如何構造合適的應用程序界面
D.如何控制不同用戶的數據操作權限
10.數據庫設計可劃分為七個階段,每個階段都有自己的設計內容,“為哪些關系,在哪些屬性上、鍵什么樣的索引”這一設計內容應該屬于()設計階段。
A.概念設計
B.邏輯設計
C.物理設計
D.全局設計
11.假設設計數據庫性能用“開銷”,即時間、空間及可能的費用來衡量,則在數據庫應用系統生存期中存在很多開銷。其中,對物理設計者來說,主要考慮的是()。
A.規劃開銷
B.設計開銷
C.操作開銷
D.維護開銷
12.數據庫物理設計完成后,進入數據庫實施階段,下述工作中,()一般不屬于實施階段的工作。
A.建立庫結構
B.系統調試
C.加載數據
D.擴充功能
13.從ER圖導出關系模型時,如果實體間的聯系是M:N的,下列說法中正確的是()。
A.將N方關鍵字和聯系的屬性納入M方的屬性中 B.將M方關鍵字和聯系的屬性納入N方的屬性中
C.增加一個關系表示聯系,其中納入M方和N方的關鍵字
D.在M方屬性和N方屬性中均增加一個表示級別的屬性
14.在ER模型中,如果有3個不同的實體集,3個M:N聯系,根據ER模型轉換為關系模型的規則,轉換為關系的數目是()。
A.4 B.5
C.6 D.7
參考答案:
(1)D(2)C(3)B(4)B(5)C(6)C(7)B(8)A(9)A(10)C(11)C(12)D(13)C(14)C
二、簡答題
1.試述數據庫設計過程。
*解析:希望同學能夠認真閱讀《概論》的內容,了解并掌握數據庫設計過程。這里只概要列出數據庫設計過程的六個階段:
1)需求分析
2)概念結構設計
3)邏輯結構設計
4)數據庫物理設計
5)數據庫實施
6)數據庫運行和維護
這是一個完整的實際數據庫及其應用系統的設計過程。不僅包括設計數據庫本身,還包括數據庫的實施、數據庫運行和維護。
設計一個完善的數據庫應用系統往往是上述六個階段的不斷反復。
2.試述數據庫設計過程的各個階段上的設計描述。
*解析:這是進一步了解數據庫設計的具體內容。設計描述是指在各個階段體現設計內容,描述設計結果的各種文檔、程序。
答:各階段的設計要點如下:
1)需求分析:準確了解與分析用戶需求(包括數據與處理)。
2)概念結構設計:通過對用戶需求進行綜合、歸納與抽象,形成一個獨立于具體DBMS的概念模型。
3)邏輯結構設計:將概念結構轉換為某個DBMS所支持的數據模型,并對其進行優化。
4)數據庫物理設計:為邏輯數據模型選取一個最適合應用環境的物理結構(包括存儲結構和存取方法)。
5)數據庫實施:設計人員運用DBMS提供的數據語言、工具及宿主語言,根據邏輯設計和物理設計的結果建立數據庫,編制與調試應用程序,組織數據入庫,并進行試運行。
6)數據庫運行和維護:在數據庫系統運行過程中對其進行評價、調整與修改。
3.試述數據庫設計過程中結構設計部分形成的數據庫模式。
答: 數據庫結構設計的不同階段形成數據庫的各級模式,即:
在概念設計階段形成獨立于機器特點,獨立于各個DBMS產品的概念模式,在本篇中就是E-R圖;
在邏輯設計階段將E-R圖轉換成具體的數據庫產品支持的數據模型,如關系模型,形成數據庫邏輯模式;然后在基本表的基礎上再建立必要的視圖(View),形成數據的外模式;
在物理設計階段,根據DBMS特點和處理的需要,進行物理存儲安排,建立索引,形成數據庫內模式。
概念模式是面向用戶和設計人員的,屬于概念模型的層次;邏輯模式、外模式、內模式是DBMS支持的模式,屬于數據模型的層次。可以在DBMS中加以描述和存儲。
4.試述數據庫設計的特點。
答: 數據庫設計既是一項涉及多學科的綜合性技術又是一項龐大的工程項目。其主要特點有:
1)數據庫建設是硬件、軟件和干件(技術與管理的界面)的結合。
2)從軟件設計的技術角度看,數據庫設計應該和應用系統設計相結合,也就是說,整個設計過程中要把結構(數據)設計和行為(處理)設計密切結合起來。
5.需求分析階段的設計目標是什么?調查的內容是什么?
答: 需求分析階段的設計目標是通過詳細調查現實世界要處理的對象(組織、部門、企業等),充分了解原系統(手工系統或計算機系統)工作概況,明確用戶的各種需求,然后在此基礎上確定新系統的功能。
調查的內容是“數據”和“處理”,即獲得用戶對數據庫的如下要求:
(1)信息要求。指用戶需要從數據庫中獲得信息的內容與性質。由信息要求可以導出數據要求,即在數據庫中需要存儲哪些數據。
(2)處理要求。指用戶要完成什么處理功能,對處理的響應時間有什么要求,處理方式是批處理還是聯機處理。
(3)安全性與完整性要求。
6.數據字典的內容和作用是什么?
答:數據字典是系統中各類數據描述的集合。數據字典的內容通常包括:數據項、數據結構、數據流、數據存儲、處理過程五個部分
其中數據項是數據的最小組成單位,若干個數據項可以組成一個數據結構。數據字典通過對數據項和數據結構的定義來描述數據流、數據存儲的邏輯內容。
數據字典的作用:
數據字典是關于數據庫中數據的描述,在需求分析階段建立,是下一步進行概念設計的基礎,并在數據庫設計過程中不斷修改、充實、完善。
(注意,數據庫設計階段形成的數據字典與后面講到的數據字典不同,后者是DBMS關于數據庫中數據的描述,當然兩者是有聯系的)。
7.什么是數據庫的概念結構?試述其特點和設計策略。
答:概念結構是信息世界的結構,即概念模型,其主要特點是:
(1)能真實、充分地反映現實世界,包括事物和事物之間的聯系,能滿足用戶對數據的處理要求。是對現實世界的一個真實模型。
(2)易于理解,從而可以用它和不熟悉計算機的用戶交換意見,用戶的積極參與是數據庫的設計成功的關鍵。
(3)易于更改,當應用環境和應用要求改變時,容易對概念模型修改和擴充。
(4)易于向關系、網狀、層次等各種數據模型轉換。
概念結構的設計策略通常有四種:
? 自頂向下。即首先定義全局概念結構的框架,然后逐步細化;
? 自底向上。即首先定義各局部應用的概念結構,然后將它們集成起來,得到全局概念
結構;
? 逐步擴張。首先定義最重要的核心概念結構,然后向外擴充,以滾雪球的方式逐步生
成其他概念結構,直至總體概念結構;
? 混合策略。即將自頂向下和自底向上相結合,用自頂向下策略設計一個全局概念結構的
框架,以它為骨架集成由自底向上策略中設計的各局部概念結構。
8.什么叫數據抽象?試舉例說明。
答: 數據抽象是對實際的人、物、事和概念進行人為處理,抽取所關心的共同特性,忽略非本質的細節,并把這些特性用各種概念精確地加以描述,這些概念組成了某種模型。
如分類這種抽象是:定義某一類概念作為現實世界中一組對象的類型。這些對象具有某些共同的特性和行為。它抽象了對象值和型之間的“is member of”的語義。在E-R模型中,實體型就是這種抽象。例如在學校環境中,李英是老師,表示李英是教師類型中的一員,則教師是實體型,李英是教師實體型中的一個實體值,具有教師共同的特性和行為:在某個系某個專業教學,講授某些課程,從事某個方向的科研。
9.試述數據庫概念結構設計的重要性和設計步驟。
答: 重要性:
數據庫概念設計是整個數據庫設計的關鍵,將在需求分析階段所得到的應用需求首先抽
象為概念結構,以此作為各種數據模型的共同基礎,從而能更好地、更準確地用某一DBMS實現這些需求。
設計步驟:
概念結構的設計方法有多種,其中最經常采用的策略是自底向上方法,該方法的設計步
驟通常分為兩步:第1步是抽象數據并設計局部視圖,第2步是集成局部視圖,得到全局的概念結構
10.什么是E-R圖?構成E-R圖的基本要素是什么?
答: E-R圖為實體-聯系圖,提供了表示實體型、屬性和聯系的方法,用來描述現實世界的概念模型。
構成E-R圖的基本要素是實體型、屬性和聯系,其表示方法為:
? 實體型:用矩形表示,矩形框內寫明實體名;
? 屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來;
? 聯系:用菱形表示,菱形框內寫明聯系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型(1 : 1,1 : n或m : n)。
11.為什么要視圖集成?視圖集成的方法是什么?
答: 在對數據庫系統進行概念結構設計時一般采用自底向上的設計方法,把繁雜的大系統分解子系統。首先設計各個子系統的局部視圖,然后通過視圖集成的方式將各子系統有機的融合起來,綜合成一個系統的總視圖。這樣設計清晰,由簡到繁。由于數據庫系統是從整體角度看待和描述數據的,因此數據不再面向某個應用而是整個系統。因此必須進行視圖集成,使得數據庫能被全系統的多個用戶、多個應用共享使用。
一般說來,視圖集成可以有兩種方式:
? 多個分E-R圖一次集成;
? 逐步集成,用累加的方式一次集成兩個分E-R圖。
無論采用哪種方式,每次集成局部E-R圖時都需要分兩步走:
(1)合并。解決各分E-R圖之間的沖突,將各分E-R圖合并起來生成初步E-R圖。
(2)修改和重構。消除不必要的冗余,生成基本E-R圖。
12.什么是數據庫的邏輯結構設計?試述其設計步驟。
答: 數據庫的邏輯結構設計就是把概念結構設計階段設計好的基本E-R圖轉換為與選用的DBMS產品所支持的數據模型相符合的邏輯結構。
設計步驟為:
(1)將概念結構轉換為一般的關系、網狀、層次模型;
(2)將轉換來的關系、網狀、層次模型向特定DBMS支持下的數據模型轉換;
(3)對數據模型進行優化。
13.試述把E-R圖轉換為DBTG模型和關系模型的轉換規則。
答: E-R圖向DBTG模型的轉換規則:
1)每個實體型轉換為記錄型,實體的屬性轉換為記錄的數據項;
2)實體型之間1:n(n≥1)的聯系轉換為一個系,沒有任何聯系的實體型轉換為奇異系;
3)K(K≥2)個實體型之間多對多的聯系,引入一個連結記錄,形成K個實體型和連結記錄之間的K個系。連結記錄的屬性由諸首記錄的碼及聯系屬性所組成;
4)同一實體型內的1:n,n:m聯系,引入連結記錄,轉換為兩個系。
*解析:根據我國實際,網狀,層次數據庫系統已很少使用,因此《概論》第三版把它們刪去了,有關的主要概念放在第一章數據模型中介紹。對于DBTG模型的許多概念也介紹得很簡單。本題的內容已經超出了書上的內容,同學們只要了解就可以了。但是,下面E-R圖向關系模型的轉換規則要求同學必須掌握,并且能夠舉一反三。
答: E-R圖向關系模型的轉換規則:
一個實體型轉換為一個關系模式。實體的屬性就是關系的屬性,實體的碼就是關系的碼。
對于實體間的聯系則有以下不同的情況:
(1)一個1:1聯系可以轉換為一個獨立的關系模式,也可以與任意一端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,每個實體的碼均是該關系的候選碼。如果與某一端實體對應的關系模式合并,則需要在該關系模式的屬性中加入另一個關系模式的碼和聯系本身的屬性。
(2)一個1:n聯系可以轉換為一個獨立的關系模式,也可以與n端對應的關系模式合并。如果轉換為一個獨立的關系模式,則與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為n端實體的碼。
(3)一個m:n聯系轉換為一個關系模式。與該聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,各實體碼的組合組成該關系的碼,或碼的一部分。
(4)三個或三個以上實體間的一個多元聯系可以轉換為一個關系模式。與該多元聯系相連的各實體的碼以及聯系本身的屬性均轉換為關系的屬性,而關系的碼為各實體碼的組合。
(5)具有相同碼的關系模式可合并。
*14.你能給出由E-R圖轉換為IMS模型的轉換規則嗎?
答: E-R圖向IMS模型的轉換規則:
1)每個實體型轉換為記錄型,實體的屬性轉換為記錄的數據項;
2)實體型之間1:n(n≥1)的聯系轉換記錄型之間的有向邊;
3)實體型之間m:n(m>1,n>1)的聯系則分解成一對多聯系,再根據2)轉換;
4)K(K≥2)個實體型之間多對多的聯系,可先轉換成多對兩個實體型之間的聯系,再根據3)轉換。
*解析:IMS是IBM公司的層次數據庫管理系統。IMS模型是層次模型。E-R圖向IMS模型轉換的另一種方法是,先把E-R圖轉換為網狀模型,再利用IMS邏輯數據庫LDB的概念來表示網狀模型。詳細方法這里從略。
數據庫恢復技術
一、選擇題
1.一個事務的執行,要么全部完成,要么全部不做,一個事務中對數據庫的所有操作都是一個不可分割的操作序列的屬性是()。
A.原子性
B.一致性
C.獨立性
D.持久性
2.表示兩個或多個事務可以同時運行而不互相影響的是()。
A.原子性
B.一致性
C.獨立性
D.持久性
3.事務的持續性是指()
A.事務中包括的所有操作要么都做,要么都不做。
B.事務一旦提交,對數據庫的改變是永久的。
C.一個事務內部的操作對并發的其他事務是隔離的。
D.事務必須是使數據庫從一個一致性狀態變到另一個一致性狀態。
4.SQL語言中的COMMIT語句的主要作用是()。
A.結束程序
B.返回系統
C.提交事務
D.存儲數據
5.SQL語言中用()語句實現事務的回滾
A.CREATE TABLE B.ROLLBACK
C.GRANT和REVOKE D.COMMIT
6. 若系統在運行過程中,由于某種硬件故障,使存儲在外存上的數據部分損失或全部損失,這種情況稱為()。
A.介質故障
B.運行故障
C.系統故障 D.事務故障
7. 在DBMS中實現事務持久性的子系統是()。
A.安全管理子系統
B.完整性管理子系統
C.并發控制子系統
D.恢復管理子系統
8.后援副本的作用是()。
A.保障安全性
B.一致性控制
C.故障后的恢復
D.數據的轉儲
9. 事務日志用于保存()。
A.程序運行過程
B.程序的執行結果
C.對數據的更新操作
D.數據操作
10. 數據庫恢復的基礎是利用轉儲的冗余數據。這些轉儲的冗余數據包括()。
A.數據字典、應用程序、審計檔案、數據庫后備副本
B.數據字典、應用程序、審計檔案、日志文件
C.日志文件、數據庫后備副本
D.數據字典、應用程序、數據庫后備副本
選擇題答案:(1)A(2)C(3)B(4)C(5)B(6)A(7)D(8)C(9)C(10)C
二、簡答題
1.試述事務的概念及事務的四個特性。
答: 事務是用戶定義的一個數據庫操作序列,這些操作要么全做要么全不做,是一個不可分割的工作單位。
事務具有四個特性:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)和持續性(Durability)。這個四個特性也簡稱為ACID特性。
原子性:事務是數據庫的邏輯工作單位,事務中包括的諸操作要么都做,要么都不做。
一致性:事務執行的結果必須是使數據庫從一個一致性狀態變到另一個一致性狀態。
隔離性:一個事務的執行不能被其他事務干擾。即一個事務內部的操作及使用的數據對其他并發事務是隔離的,并發執行的各個事務之間不能互相干擾。
持續性:持續性也稱永久性(Permanence),指一個事務一旦提交,它對數據庫中數據的改變就應該是永久性的。接下來的其他操作或故障不應該對其執行結果有任何影響。
2.為什么事務非正常結束時會影響數據庫數據的正確性,請列舉一例說明之。
答: 事務執行的結果必須是使數據庫從一個一致性狀態變到另一個一致性狀態。如果數據庫系統運行中發生故障,有些事務尚未完成就被迫中斷,這些未完成事務對數據庫所做的修改有一部分已寫入物理數據庫,這時數據庫就處于一種不正確的狀態,或者說是不一致的狀態。
例如某工廠的庫存管理系統中,要把數量為Q的某種零件從倉庫1移到倉庫2存放。
則可以定義一個事務T,T包括兩個操作;Q1=Q1-Q,Q2=Q2+Q。如果T非正常終止時只做了第一個操作,則數據庫就處于不一致性狀態,庫存量無緣無故少了Q。
3.數據庫中為什么要有恢復子系統?它的功能是什么?
答: 因為計算機系統中硬件的故障、軟件的錯誤、操作員的失誤以及惡意的破壞是不可避免的,這些故障輕則造成運行事務非正常中斷,影響數據庫中數據的正確性,重則破壞數據庫,使數據庫中全部或部分數據丟失,因此必須要有恢復子系統。
恢復子系統的功能是:把數據庫從錯誤狀態恢復到某一已知的正確狀態(亦稱為一致狀態或完整狀態)。
4.數據庫運行中可能產生的故障有哪幾類?哪些故障影響事務的正常執行?哪些故障破壞數據庫數據?
答:數據庫系統中可能發生各種各樣的故障,大致可以分以下幾類:
(1)事務內部的故障;
(2)系統故障;
(3)介質故障;
(4)計算機病毒。
事務故障、系統故障和介質故障影響事務的正常執行;介質故障和計算機病毒破壞數據
庫數據。
5.據庫恢復的基本技術有哪些?
答:數據轉儲和登錄日志文件是數據庫恢復的基本技術。
當系統運行過程中發生故障,利用轉儲的數據庫后備副本和日志文件就可以將數據庫恢復到故障前的某個一致性狀態。
6.數據庫轉儲的意義是什么? 試比較各種數據轉儲方法。
答: 數據轉儲是數據庫恢復中采用的基本技術。所謂轉儲即DBA定期地將數據庫復制到磁帶或另一個磁盤上保存起來的過程。當數據庫遭到破壞后可以將后備副本重新裝入,將數據庫恢復到轉儲時的狀態。
靜態轉儲:在系統中無運行事務時進行的轉儲操作。靜態轉儲簡單,但必須等待正運行的用戶事務結束才能進行。同樣,新的事務必須等待轉儲結束才能執行。顯然,這會降低數據庫的可用性。
動態轉儲:指轉儲期間允許對數據庫進行存取或修改。動態轉儲可克服靜態轉儲的缺點,它不用等待正在運行的用戶事務結束,也不會影響新事務的運行。但是,轉儲結束時后援副本上的數據并不能保證正確有效。因為轉儲期間運行的事務可能修改了某些數據,使得后援副本上的數據不是數據庫的一致版本。
為此,必須把轉儲期間各事務對數據庫的修改活動登記下來,建立日志文件(log file)。這樣,后援副本加上日志文件就能得到數據庫某一時刻的正確狀態。
轉儲還可以分為海量轉儲和增量轉儲兩種方式。
海量轉儲是指每次轉儲全部數據庫。增量轉儲則指每次只轉儲上一次轉儲后更新過的數據。從恢復角度看,使用海量轉儲得到的后備副本進行恢復一般說來更簡單些。但如果數據庫很大,事務處理又十分頻繁,則增量轉儲方式更實用更有效。
7.什么是日志文件?為什么要設立日志文件?
答:(1)日志文件是用來記錄事務對數據庫的更新操作的文件。
(2)設立日志文件的目的是: 進行事務故障恢復;進行系統故障恢復;協助后備副本進行介質故障恢復。
8.登記日志文件時為什么必須先寫日志文件,后寫數據庫?
答: 把對數據的修改寫到數據庫中和把表示這個修改的日志記錄寫到日志文件中是兩個不同的操作。有可能在這兩個操作之間發生故障,即這兩個寫操作只完成了一個。
如果先寫了數據庫修改,而在運行記錄中沒有登記這個修改,則以后就無法恢復這個修改了。如果先寫日志,但沒有修改數據庫,在恢復時只不過是多執行一次UNDO操作,并不會影響數據庫的正確性。所以一定要先寫日志文件,即首先把日志記錄寫到日志文件中,然后寫數據庫的修改。
9.針對不同的故障,試給出恢復的策略和方法。(即如何進行事務故障的恢復?系統故障的恢復?介質故障恢復?)
答: 事務故障的恢復:
事務故障的恢復是由DBMS自動完成的,對用戶是透明的。
DBMS執行恢復步驟是:
(1)反向掃描文件日志(即從最后向前掃描日志文件),查找該事務的更新操作。
(2)對該事務的更新操作執行逆操作。即將日志記錄中“更新前的值”寫入數據庫。
(3)繼續反向掃描日志文件,做同樣處理。
(4)如此處理下去,直至讀到此事務的開始標記,該事務故障的恢復就完成了。
答: 系統故障的恢復:
系統故障可能會造成數據庫處于不一致狀態:
一是未完成事務對數據庫的更新可能已寫入數據庫;
二是已提交事務對數據庫的更新可能還留在緩沖區,沒來得及寫入數據庫。
因此恢復操作就是要撤銷(UNDO)故障發生時未完成的事務,重做(REDO)已完成的事務。
系統的恢復步驟是:
(1)正向掃描日志文件,找出在故障發生前已經提交的事務隊列(REDO隊列)和未完成的事務隊列(UNDO隊列)。
(2)對撤銷隊列中的各個事務進行UNDO處理。
進行UNDO處理的方法是,反向掃描日志文件,對每個UNDO事務的更新操作執行逆操作,即將日志記錄中“更新前的值”(Before Image)寫入數據庫。
(3)對重做隊列中的各個事務進行REDO處理。
進行REDO處理的方法是:正向掃描日志文件,對每個REDO事務重新執行日志文件登記的操作。即將日志記錄中“更新后的值”(After Image)寫入數據庫。
*解析:
在第(1)步中如何找出REDO隊列和UNDO隊列?請大家思考一下。
下面給出一個算法:
1)建立兩個事務隊列:
? UNDO-LIST: 需要執行undo操作的事務集合;
? REDO-LIST: 需要執行redo操作的事務集合;
兩個事務隊列初始均為空。
2)從日志文件頭開始,正向掃描日志文件
? 如有新開始(遇到Begin Transaction)的事務Ti,把Ti暫時放入UNDO-LIST隊列;
? 如有提交的事務(遇到End Transaction)Tj,把Tj從UNDO-LIST隊列移到REDO-LIST隊列;
直到日志文件結束
答: 介質故障的恢復:
介質故障是最嚴重的一種故障。
恢復方法是重裝數據庫,然后重做已完成的事務。具體過程是:
(1)DBA裝入最新的數據庫后備副本(離故障發生時刻最近的轉儲副本),使數據庫恢復到轉儲時的一致性狀態。
(2)DBA裝入轉儲結束時刻的日志文件副本
(3)DBA啟動系統恢復命令,由DBMS完成恢復功能,即重做已完成的事務。
*解析
1)我們假定采用的是靜態轉儲,因此第(1)步裝入數據庫后備副本便可以了。
2)如果采用的是靜動態轉儲,第(1)步裝入數據庫后備副本還不夠,還需同時裝入轉儲開始時刻的日志文件副本,經過處理后才能得到正確的數據庫后備副本。
3)第(2)步重做已完成的事務的算法是:
a.正向掃描日志文件,找出故障發生前已提交的事務的標識,將其記入重做隊列
b.再一次正向掃描日志文件,對重做隊列中的所有事務進行重做處理。即將日志記錄中“更新后的值”寫入數據庫。
10.具有檢查點的恢復技術有什么優點?
答: 利用日志技術進行數據庫恢復時,恢復子系統必須搜索日志,確定哪些事務需要REDO,哪些事務需要UNDO。一般來說,需要檢查所有日志記錄。這樣做有兩個問題:
一是搜索整個日志將耗費大量的時間。
二是很多需要REDO處理的事務實際上已經將它們的更新操作結果寫到數據庫中了,恢復子系統又重新執行了這些操作,浪費了大量時間。
檢查點技術就是為了解決這些問題。
11.試述使用檢查點方法進行恢復的步驟。
答: ① 從重新開始文件中找到最后一個檢查點記錄在日志文件中的地址,由該地址在日志文件中找到最后一個檢查點記錄。
② 由該檢查點記錄得到檢查點建立時刻所有正在執行的事務清單ACTIVE-LIST。
這里建立兩個事務隊列:
? UNDO-LIST: 需要執行undo操作的事務集合;
? REDO-LIST: 需要執行redo操作的事務集合;
把ACTIVE-LIST暫時放入UNDO-LIST隊列,REDO隊列暫為空。
③ 從檢查點開始正向掃描日志文件
? 如有新開始的事務Ti,把Ti暫時放入UNDO-LIST隊列;
? 如有提交的事務Tj,把Tj從UNDO-LIST隊列移到REDO-LIST隊列,直到日志文件結束;
④ 對UNDO-LIST中的每個事務執行UNDO操作, 對REDO-LIST中的每個事務執行REDO操作。
12.什么是數據庫鏡像?它有什么用途?
答: 數據庫鏡像即根據DBA的要求,自動把整個數據庫或者其中的部分關鍵數據復制到另一個磁盤上。每當主數據庫更新時,DBMS自動把更新后的數據復制過去,即DBMS自動保證鏡像數據與主數據的一致性。
數據庫鏡像的用途有:
一是用于數據庫恢復。當出現介質故障時,可由鏡像磁盤繼續提供使用,同時DBMS自動利用鏡像磁盤數據進行數據庫的恢復,不需要關閉系統和重裝數據庫副本。
二是提高數據庫的可用性。在沒有出現故障時,當一個用戶對某個數據加排它鎖進行修改時,其他用戶可以讀鏡像數據庫上的數據,而不必等待該用戶釋放鎖。
*13.試述你了解的某一個實際的DBMS產品中采用的恢復策略。
答: 下面簡單介紹一下Oracle的恢復技術:
Oracle中恢復機制也采用了轉儲和登記日志文件兩個技術。
Oracle向DBA提供了多種轉儲后備副本的方法,如文件拷貝、利用Oracle的Export實用程序、用SQL命令Spool以及自己編程實現等。相應地,Oracle也提供了多種重裝后備副本的方法,如文件拷貝、利用Oracle的Import實用程序、利用SQL*LOADER以及自己編程實現等。
在Oracle 早期版本(V.5)中,日志文件以數據塊為單位,也就是說,Oracle的恢復操作是基于數據塊的,不是基于操作的。Oracle中記錄數據庫更新前的舊值的日志文件稱為數據庫前像文件(Before Image,簡稱BI文件),記錄數據庫更新后的新值的日志文件稱為數據庫的后像文件(After Image,簡稱AI文件)。BI文件是必須配置的,AI文件是可以任選的。
Oracle7為了能夠在出現故障時更有效地恢復數據,也為了解決讀“臟”數據問題,提供了REDO日志文件和回滾段(Rollback Segment)。REDO日志文件中記錄了被更新數據的前像和后像。回滾段記錄更新數據的前像,設在數據庫緩沖區中。在利用日志文件進行故障恢復時,為減少掃描日志文件的遍數,Oracle7首先掃描REDO日志文件,重做所有操作,包括未正常提交的事務的操作,然后再根據回滾段中的數據,撤銷未正常提交的事務的操作。
詳細技術希望同學自己設法了解Oracle最新版本的介紹,例如通過INTERNET訪問Oracle公司的網站。也可以了解其他DBMS廠商的產品情況。
*14.試用恢復的基本技術設計一個恢復子系統,給出這個子系統的恢復策略,包括:
(a)當產生某一類故障時如何恢復數據庫的方法;
(b)日志文件的結構;
(c)登記日志文件的方法;
(d)利用日志文件恢復事務的方法;
(e)轉儲的類型;
(f)轉儲的后備副本和日志文件如何配合使用。
*解析:這是一個大作業。可以綜合復習和運用學到的知識。設計一個恢復子系統。
例如,日志文件的結構你可以記錄為單位,也可以以數據塊為單位。不同的日志文件結構,登記的日志內容,日志文件恢復事務的方法也就不同了。
對于研究生,還應該上機模擬實現你設計的恢復子系統。
數據庫并發控制
一、選擇題
1. 為了防止一個用戶的工作不適當地影響另一個用戶,應該采取()。
A.完整性控制
B.訪問控制
C.安全性控制
D.并發控制
2.解決并發操作帶來的數據不一致問題普遍采用()技術。
A.封鎖
B.存取控制
C.恢復
D.協商
3. 下列不屬于并發操作帶來的問題是()。
A.丟失修改
B.不可重復讀
C.死鎖
D.臟讀
4. DBMS普遍采用()方法來保證調度的正確性。
A.索引
B.授權
C.封鎖
D.日志
5.事務T在修改數據R之前必須先對其加X鎖,直到事務結束才釋放,這是()。
A.一級封鎖協議
B.二級封鎖協議
C.三級封鎖協議
D.零級封鎖協議
6. 如果事務T獲得了數據項Q上的排他鎖,則T對Q()。
A.只能讀不能寫
B.只能寫不能讀
C.既可讀又可寫 D.不能讀也不能寫
7.設事務T1和T2,對數據庫中地數據A進行操作,可能有如下幾種情況,請問哪一種不會發生沖突操作()。
A.T1正在寫A,T2要讀A
B.T1正在寫A,T2也要寫A
C.T1正在讀A,T2要寫A D.T1正在讀A,T2也要讀A
8.如果有兩個事務,同時對數據庫中同一數據進行操作,不會引起沖突的操作是()。
A.一個是DELETE,一個是SELECT
B.一個是SELECT,一個是DELETE
C.兩個都是UPDATE
D.兩個都是SELECT
9. 在數據庫系統中,死鎖屬于()。
A.系統故障
B.事務故障
C.介質故障 D.程序故障
參考答案:(1)D(2)A(3)C(4)C(5)A(6)C(7)D(8)D(9)B
二、簡答題
1.在數據庫中為什么要并發控制?
答:數據庫是共享資源,通常有許多個事務同時在運行。
當多個事務并發地存取數據庫時就會產生同時讀取和/或修改同一數據的情況。若對并發操作不加控制就可能會存取和存儲不正確的數據,破壞數據庫的一致性。所以數據庫管理系統必須提供并發控制機制。
2.并發操作可能會產生哪幾類數據不一致?用什么方法能避免各種不一致的情況?
答:并發操作帶來的數據不一致性包括三類:丟失修改、不可重復讀和讀“臟”數據。
(1)丟失修改(Lost Update)
兩個事務T1和T2讀入同一數據并修改,T2提交的結果破壞了(覆蓋了)T1提交的結果,導致T1的修改被丟失。
(2)不可重復讀(Non-Repeatable Read)
不可重復讀是指事務T1讀取數據后,事務T2執行更新操作,使T1無法再現前一次讀取結果。
(3)讀“臟”數據(Dirty Read)
讀“臟”數據是指事務T1修改某一數據,并將其寫回磁盤,事務T2讀取同一數據后,T1由于某種原因被撤銷,這時T1已修改過的數據恢復原值,T2讀到的數據就與數據庫中的數據不一致,則T2讀到的數據就為“臟”數據,即不正確的數據。
避免不一致性的方法和技術就是并發控制。最常用的并發控制技術是封鎖技術。
也可以用其他技術,例如在分布式數據庫系統中可以采用時間戳方法來進行并發控制。
3.什么是封鎖?
答:封鎖就是事務T在對某個數據對象例如表、記錄等操作之前,先向系統發出請求,對其加鎖。加鎖后事務T就對該數據對象有了一定的控制,在事務T釋放它的鎖之前,其他的事務不能更新此數據對象。
封鎖是實現并發控制的一個非常重要的技術。
4.基本的封鎖類型有幾種?試述它們的含義。
答:基本的封鎖類型有兩種: 排它鎖(Exclusive Locks,簡稱X鎖)和共享鎖(Share Locks,簡稱S鎖)。
排它鎖又稱為寫鎖。若事務T對數據對象A加上X鎖,則只允許T讀取和修改A,其他任何事務都不能再對A加任何類型的鎖,直到T釋放A上的鎖。這就保證了其他事務在T釋放A上的鎖之前不能再讀取和修改A。
共享鎖又稱為讀鎖。若事務T對數據對象A加上S鎖,則事務T可以讀A但不能修改A,其他事務只能再對A加S鎖,而不能加X鎖,直到T釋放A上的S鎖。這就保證了其他事務可以讀A,但在T釋放A上的S鎖之前不能對A做任何修改。
5.什么是封鎖協議?不同級別的封鎖協議的主要區別是什么?
答:在運用封鎖技術對數據加鎖時,要約定一些規則。例如,在運用X鎖和S鎖對數據對象加鎖時,要約定何時申請X鎖或S鎖、何時釋放封鎖等。這些約定或者規則稱為封鎖協議(Locking Protocol)。對封鎖方式約定不同的規則,就形成了各種不同的封鎖協議。不同級別的封鎖協議,例如《概論》中介紹的三級封鎖協議,三級協議的主要區別在于什么操作需要申請封鎖,何時申請封鎖以及何時釋放鎖(即持鎖時間的長短)。
一級封鎖協議:事務T在修改數據R之前必須先對其加X鎖,直到事務結束才釋放。
二級封鎖協議:一級封鎖協議加上事務T在讀取數據R之前必須先對其加S鎖,讀完后即可釋放S鎖。
三級封鎖協議:一級封鎖協議加上事務T在讀取數據R之前必須先對其加S鎖,直到事務結束才釋放。
6.不同封鎖協議與系統一致性級別的關系是什么?
答: 不同的封鎖協議對應不同的一致性級別。
一級封鎖協議可防止丟失修改,并保證事務T是可恢復的。在一級封鎖協議中,對讀數據是不加S鎖的,所以它不能保證可重復讀和不讀“臟”數據。
二級封鎖協議除防止了丟失修改,還可進一步防止讀“臟”數據。在二級封鎖協議中,由于讀完數據后立即釋放S鎖,所以它不能保證可重復讀。
在三級封鎖協議中,無論是讀數據還是寫數據都加長鎖,即都要到事務結束時才釋放封鎖。所以三級封鎖協議除防止了丟失修改和不讀“臟”數據外,還進一步防止了不可重復讀。
7.試述活鎖的產生原因和解決方法。
答: 活鎖產生的原因:當一系列封鎖不能按照其先后順序執行時,就可能導致一些事務無限期等待某個封鎖,從而導致活鎖。
避免活鎖的簡單方法是采用先來先服務的策略。當多個事務請求封鎖同一數據對象時,封鎖子系統按請求封鎖的先后次序對事務排隊,數據對象上的鎖一旦釋放就批準申請隊列中第一個事務獲得鎖。
8.請給出預防死鎖的若干方法。
答: 在數據庫中,產生死鎖的原因是兩個或多個事務都已封鎖了一些數據對象,然后又都請求已被其他事務封鎖的數據加鎖,從而出現死等待。
防止死鎖的發生其實就是要破壞產生死鎖的條件。預防死鎖通常有兩種方法:
(1)一次封鎖法
要求每個事務必須一次將所有要使用的數據全部加鎖,否則就不能繼續執行。
(2)順序封鎖法
預先對數據對象規定一個封鎖順序,所有事務都按這個順序實行封鎖。
不過,預防死鎖的策略不大適合數據庫系統的特點。
9.請給出檢測死鎖發生的一種方法,當發生死鎖后如何解除死鎖?
答:數據庫系統一般采用允許死鎖發生,DBMS檢測到死鎖后加以解除的方法。
DBMS中診斷死鎖的方法與操作系統類似,一般使用超時法或事務等待圖法。
超時法是:如果一個事務的等待時間超過了規定的時限,就認為發生了死鎖。超時法實現簡單,但有可能誤判死鎖,事務因其他原因長時間等待超過時限時,系統會誤認為發生了死鎖。若時限設置得太長,又不能及時發現死鎖發生。
DBMS并發控制子系統檢測到死鎖后,就要設法解除。通常采用的方法是選擇一個處理死鎖代價最小的事務,將其撤消,釋放此事務持有的所有鎖,使其他事務得以繼續運行下去。當然,對撤銷的事務所執行的數據修改操作必須加以恢復。
10.什么樣的并發調度是正確的調度?
答: 可串行化(Serializable)的調度是正確的調度。
可串行化的調度的定義:多個事務的并發執行是正確的,當且僅當其結果與按某一次序串行地執行它們時的結果相同,我們稱這種調度策略為可串行化的調度。
11.試述兩段鎖協議的概念。
答: 兩段鎖協議是指所有事務必須分兩個階段對數據項加鎖和解鎖。
? 在對任何數據進行讀、寫操作之前,首先要申請并獲得對該數據的封鎖;
? 在釋放一個封鎖之后,事務不再申請和獲得任何其他封鎖。
“兩段”的含義是,事務分為兩個階段:
第一階段是獲得封鎖,也稱為擴展階段。在這階段,事務可以申請獲得任何數據項上的任何類型的鎖,但是不能釋放任何鎖。
第二階段是釋放封鎖,也稱為收縮階段。在這階段,事務釋放已經獲得的鎖,但是不能再申請任何鎖。
12.為什么要引進意向鎖? 意向鎖的含義是什么?
答: 引進意向鎖是為了提高封鎖子系統的效率。該封鎖子系統支持多種封鎖粒度。
原因是:在多粒度封鎖方法中一個數據對象可能以兩種方式加鎖—顯式封鎖和隱式封鎖。因此系統在對某一數據對象加鎖時不僅要檢查該數據對象上有無(顯式和隱式)封鎖與之沖突;還要檢查其所有上級結點和所有下級結點,看申請的封鎖是否與這些結點上的(顯式和隱式)封鎖沖突;顯然,這樣的檢查方法效率很低。為此引進了意向鎖。
意向鎖的含義是:對任一結點加鎖時,必須先對它的上層結點加意向鎖。
例如事務T要對某個元組加X鎖,則首先要對關系和數據庫加IX鎖。換言之,對關系和數據庫加IX鎖,表示它的后裔結點—某個元組擬(意向)加X鎖。
引進意向鎖后,系統對某一數據對象加鎖時不必逐個檢查與下一級結點的封鎖沖突了。例如,事務T要對關系R加X鎖時,系統只要檢查根結點數據庫和R本身是否已加了不相容的鎖(如發現已經加了IX,則與X沖突),而不再需要搜索和檢查R中的每一個元組是否加了X鎖或S鎖。
13.試述常用的意向鎖:IS鎖,IX鎖,SIX鎖,給出這些鎖的相容矩陣。
答: IS鎖:如果對一個數據對象加IS鎖,表示它的后裔結點擬(意向)加S鎖。例如,要對某個元組加S鎖,則要首先對關系和數據庫加IS鎖
IX鎖:如果對一個數據對象加IX鎖,表示它的后裔結點擬(意向)加X鎖。例如,要對某個元組加X鎖,則要首先對關系和數據庫加IX鎖。
SIX鎖:如果對一個數據對象加SIX鎖,表示對它加S鎖,再加IX鎖,即SIX = S + IX。
相容矩陣(略)
14.理解并解釋下列術語的含義:封鎖,活鎖,死鎖,排它鎖,共享鎖,并發事務的調度,可串行化的調度,兩段鎖協議。
答:(略,已經在上面有關習題中解答)
*15.試述你了解的某一個實際的DBMS產品的并發控制機制。
答:(略)
數據庫安全性
一、選擇題
1.以下()不屬于實現數據庫系統安全性的主要技術和方法。
A.存取控制技術
B.視圖技術
C.審計技術 D.出入機房登記和加鎖
2. SQL中的視圖提高了數據庫系統的()。
A.完整性
B.并發控制
C.隔離性
D.安全性
3. SQL語言的GRANT和REMOVE語句主要是用來維護數據庫的()。
A.完整性
B.可靠性
C.安全性
D.一致性
4.在數據庫的安全性控制中,授權的數據對象的(),授權子系統就越靈活。
A.范圍越小
B.約束越細致
C.范圍越大
D.約束范圍大
選擇題答案:
(1)D(2)D(3)C(4)A
三、簡答題
1.什么是數據庫的安全性?
答: 數據庫的安全性是指保護數據庫以防止不合法的使用所造成的數據泄露、更改或破壞。
2.數據庫安全性和計算機系統的安全性有什么關系?
答: 安全性問題不是數據庫系統所獨有的,所有計算機系統都有這個問題。只是在數據庫系統中大量數據集中存放,而且為許多最終用戶直接共享,從而使安全性問題更為突出。
系統安全保護措施是否有效是數據庫系統的主要指標之一。
數據庫的安全性和計算機系統的安全性,包括操作系統、網絡系統的安全性是緊密聯系、相互支持的,3.試述實現數據庫安全性控制的常用方法和技術。
答: 實現數據庫安全性控制的常用方法和技術有:
1)用戶標識和鑒別:該方法由系統提供一定的方式讓用戶標識自己的名字或身份。每次用戶要求進入系統時,由系統進行核對,通過鑒定后才提供系統的使用權。
2)存取控制:通過用戶權限定義和合法權檢查確保只有合法權限的用戶訪問數據庫,所有未被授權的人員無法存取數據。例如C2級中的自主存取控制(DAC),B1級中的強制存取控制(MAC);
3)視圖機制:為不同的用戶定義視圖,通過視圖機制把要保密的數據對無權存取的用戶隱藏起來,從而自動地對數據提供一定程度的安全保護。
4)審計:建立審計日志,把用戶對數據庫的所有操作自動記錄下來放入審計日志中,DBA可以利用審計跟蹤的信息,重現導致數據庫現有狀況的一系列事件,找出非法存取數據的人、時間和內容等。
5)數據加密:對存儲和傳輸的數據進行加密處理,從而使得不知道解密算法的人無法獲知數據的內容。
具體內容請參見《概論》9.2。
4.什么是數據庫中的自主存取控制方法和強制存取控制方法?
答:自主存取控制方法:定義各個用戶對不同數據對象的存取權限。當用戶對數據庫訪問時首先檢查用戶的存取權限。防止不合法用戶對數據庫的存取。
強制存取控制方法:每一個數據對象被(強制地)標以一定的密級,每一個用戶也被(強制地)授予某一個級別的許可證。系統規定只有具有某一許可證級別的用戶才能存取某一個密級的數據對象。
*解析:自主存取控制中自主的含義是:用戶可以將自己擁有的存取權限“自主”地授予別人。即用戶具有一定的“自主”權。
5.SQL語言中提供了哪些數據控制(自主存取控制)的語句?請試舉幾例說明它們的使用方法。
答:SQL中 的自主存取控制是通過GRANT 語句和 REVOKE 語句來實現的。如:
GRANT SELECT,INSERT ON Student TO 王平WITH GRANT OPTION;
就將Student表的SELECT和INSERT權限授予了用戶王平,后面的“WITH GRANT OPTION”子句表示用戶王平同時也獲得了“授權”的權限,即可以把得到的權限繼續授予其他用戶。
REVOKE INSERT ON Student FROM 王平CASCADE;
就將Student表 的INSERT權限從用戶王平處收回,選項 CASCADE 表示,如果用戶王平將 Student 的 INSERT 權限又轉授給了其他用戶,那么這些權限也將從其他用戶處收回。
6.今有兩個關系模式:
職工(職工號,姓名,年齡,職務,工資,部門號)
部門(部門號,名稱,經理名,地址,電話號)
請用SQL的GRANT和REVOKE語句(加上視圖機制)完成以下授權定義或存取控制功能:
(a)用戶王明對兩個表有SELECT權力;
GRANT SELECT ON 職工,部門 TO 王明;
(b)用戶李勇對兩個表有INSERT和DELETE權力;
GRANT INSERT,DELETE ON 職工,部門 TO 李勇;
(c)*每個職工只對自己的記錄有SELECT權力;
GRANT SELECT ON 職工 WHEN USER()= NAME TO ALL;
這里假定系統的GRANT語句支持WHEN子句和USER()的使用。用戶將自己的名字作為ID。注意,不同的系統這些擴展語句可能是不同的。讀者應該了解你使用的DBMS產品的擴展語句。
(d)用戶劉星對職工表有SELECT權力,對工資字段具有更新權力;
GRANT SELECT,UPDATE(工資)ON 職工 TO 劉星;
(e)用戶張新具有修改這兩個表的結構的權力;
GRANT ALTER TABLE ON 職工,部門 TO 張新;
(f)用戶周平具有對兩個表所有權力(讀,插,改,刪數據),并具有給其他用戶授權的權力;
GRANT ALL PRIVILIGES ON 職工,部門 TO 周平WITH GRANT OPTION;
(g)用戶楊蘭具有從每個部門職工中SELECT最高工資,最低工資,平均工資的權力,他不能查看每個人的工資。
答: 首先建立一個視圖。然后對這個視圖定義楊蘭的存取權限。
CREATE VIEW 部門工資 AS
SELECT 部門.名稱,MAX(工資),MIN(工資),AVG(工資)
FROM 職工,部門
WHERE 職工.部門號 = 部門.部門號
GROUP BY 職工.部門號;
GRANT SELECT ON 部門工資 TO 楊蘭;
7.把習題8中(a)~(g)的每一種情況,撤銷各用戶所授予的權力。
答:(a)REVOKE SELECT ON 職工,部門 FROM 王明;
(b)REVOKE INSERT,DELETE ON 職工,部門 FROM 李勇;
(c)REOVKE SELECT ON 職工 WHEN USER()= NAME FROM ALL;
這里假定用戶將自己的名字作為ID,且系統的REOVKE語句支持WHEN子句,系統也支持USER()的使用。
(d)REVOKE SELECT,UPDATE ON 職工 FROM 劉星;
(e)REVOKE ALTER TABLE ON 職工,部門 FROM 張新;
(f)REVOKE ALL PRIVILIGES ON 職工,部門 FROM 周平;
(g)REVOKE SELECT ON 部門工資 FROM 楊蘭;
DROP VIEW 部門工資;
8.為什么強制存取控制提供了更高級別的數據庫安全性?
答:強制存取控制(MAC)是對數據本身進行密級標記,無論數據如何復制,標記與數據是一個不可分的整體,只有符合密級標記要求的用戶才可以操縱數據,從而提供了更高級別的安全性。
9.理解并解釋MAC機制中主體、客體、敏感度標記的含義。
答:主體是系統中的活動實體,既包括DBMS所管理的實際用戶,也包括代表用戶的各進程。
客體是系統中的被動實體,是受主體操縱的,包括文件、基表、索引、視圖等。
對于主體和客體,DBMS為它們每個實例(值)指派一個敏感度標記(Label)。敏感度標記被分成若干級別,例如絕密(Top Secret)、機密(Secret)、可信(Confidential)、公開(Public)等。主體的敏感度標記稱為許可證級別(Clearance Level),客體的敏感度標記稱為密級(Classification Level)。
10.什么是數據庫的審計功能,為什么要提供審計功能?
答:審計功能指DBMS的審計模塊在用戶對數據庫執行操作的同時把所有操作自動記錄到系統的審計日志中。
因為任何系統的安全保護措施都不是完美無缺的,蓄意盜竊破壞數據的人總可能存在。利用數據庫的審計功能,DBA可以根據審計跟蹤的信息,重現導致數據庫現有狀況的一系列事件,找出非法存取數據的人、時間和內容等。
11.統計數據庫中存在何種特殊的安全性問題?
答: 統計數據庫允許用戶查詢聚集類型的信息,如合計、平均值、最大值、最小值等,不允許查詢單個記錄信息。但是,人們可以從合法的查詢中推導出不合法的信息,即可能存在隱蔽的信息通道,這是統計數據庫要研究和解決的特殊的安全性問題。
*12.試述你了解的某一個實際的DBMS產品的安全性措施。
答: 不同的DBMS產品以及同一產品的不同版本的安全措施各不相同,仁者見仁,智者見智,請讀者自己了解。《概論》上9.4 簡單介紹了有關ORACLE數據庫的安全性措施。
數據庫完整性
一、選擇題
1.完整性檢查和控制的防范對象(),防止它們進入數據庫。安全性控制的防范對象是(),防止他們對數據庫數據的存取。
A.不合語義的數據
B.非法用戶
C.不正確的數據
D.非法操作
2.下述哪個是SQL語言中的數據控制命令()。
A.GRANT B.COMMIT
C.UPDATE D.SELECT
3.下述SQL語言中的權限,哪一個允許用戶定義新關系時,引用其他關系的主碼作為外碼()。
A.INSERT
B.DELETE
C.REFERENCES D.SELECT
參考答案:(1)A C B D(2)A(3)C
二、簡答題
1.什么是數據庫的完整性?
答:數據庫的完整性是指數據的正確性和相容性。
2.數據庫的完整性概念與數據庫的安全性概念有什么區別和聯系?
答:數據的完整性和安全性是兩個不同的概念,但是有一定的聯系。
前者是為了防止數據庫中存在不符合語義的數據,防止錯誤信息的輸入和輸出,即所謂垃圾進垃圾出(Garbage In Garbage Out)所造成的無效操作和錯誤結果。
后者是保護數據庫防止惡意的破壞和非法的存取。
也就是說,安全性措施的防范對象是非法用戶和非法操作,完整性措施的防范對象是不合語義的數據。
3.什么是數據庫的完整性約束條件?可分為哪幾類?
答:完整性約束條件是指數據庫中的數據應該滿足的語義約束條件。
一般可以分為六類:
靜態列級約束、靜態元組約束、靜態關系約束、動態列級約束、動態元組約束、動態關系約束。
靜態列級約束是對一個列的取值域的說明,包括以下幾方面:
1.對數據類型的約束,包括數據的類型、長度、單位、精度等
2.對數據格式的約束
3.對取值范圍或取值集合的約束。
4.對空值的約束
5.其他約束
靜態元組約束就是規定組成一個元組的各個列之間的約束關系,靜態元組約束只局限在單個元組上。
靜態關系約束是在一個關系的各個元組間或者若干關系間常常存在各種聯系或約束。常見的靜態關系約束有:
1.實體完整性約束。
2.參照完整性約束。?
3.函數依賴約束。
動態列級約束是修改列定義或列值時應滿足的約束條件,包括下面兩方面:
1.修改列定義時的約束
2.修改列值時的約束
動態元組約束是指修改某個元組的值時需要參照其舊值,并且新舊值之間需要滿足某種約束條件。
動態關系約束是加在關系變化前后狀態上的限制條件,例如事務一致性、原子性等約束條件。
詳細內容可以參見《概論》10.1中的介紹。
4.DBMS的完整性控制機制應具有哪些功能?
答:DBMS的完整性控制機制應具有三個方面的功能:
1).定義功能,即提供定義完整性約束條件的機制。
2.檢查功能,即檢查用戶發出的操作請求是否違背了完整性約束條件。
3).違約反應:如果發現用戶的操作請求使數據違背了完整性約束條件,則采取一定的動作來保證數據的完整性。
5.RDBMS在實現參照完整性時需要考慮哪些方面?
答: RDBMS在實現參照完整性時需要考慮以下幾個方面:
1)外碼是否可以接受空值
2)刪除被參照關系的元組時的考慮,這時系統可能采取的作法有三種:
(a)級聯刪除(CASCADES);
(b)受限刪除(RESTRICTED);
(c)置空值刪除(NULLIFIES)
3)在參照關系中插入元組時的問題,這時系統可能采取的作法有:
(a)受限插入
(b)遞歸插入
4)修改關系中主碼的問題
一般是不能用UPDATE語句修改關系主碼的。如果需要修改主碼值,只能先刪除該元組,然后再把具有新主碼值的元組插入到關系中。
如果允許修改主碼,首先要保證主碼的唯一性和非空,否則拒絕修改。然后要區分是參照關系還是被參照關系。
詳細討論可以參見《概論》10.2。
6.假設有下面兩個關系模式:
職工(職工號,姓名,年齡,職務,工資,部門號),其中職工號為主碼;
部門(部門號,名稱,經理名,電話),其中部門號為主碼;
用SQL語言定義這兩個關系模式,要求在模式中完成以下完整性約束條件的定義:
定義每個模式的主碼;定義參照完整性;定義職工年齡不得超過60歲。
答:CREATE TABLE DEPT
(Deptno NUMBER(2),Deptname VARCHAR(10),Manager VARCHAR(10),PhoneNumber Char(12)
CONSTRAINT PK_SC PRIMARY KEY(Deptno));
CREATE TABLE EMP
(Empno NUMBER(4),Ename VARCHAR(10),Age NUMBER(2),CONSTRAINT C1 CHECK(Age《=60),Job VARCHAR(9),Sal NUMBER(7,2),Deptno NUMBER(2),CONSTRAINT FK_DEPTNO
FOREIGN KEY(Deptno)
REFERENCES DEPT(Deptno));
7.關系系統中,當操作違反實體完整性、參照完整性和用戶定義的完整性約束條件時,一般是如何分別進行處理的?
答: 對于違反實體完整性和用戶定義的完整性的操作一般都采用拒絕執行的方式進行處理。而對于違反參照完整性的操作,并不都是簡單地拒絕執行,有時要根據應用語義執行一些附加的操作,以保證數據庫的正確性。具體的處理可以參見上面第5題或《概論》10.2中相應部分。
*8.試述你了解的某一個實際的DBMS產品的完整性控制策略。
答:不同的DBMS產品以及同一產品的不同版本的完整性控制策略各不相同,讀者要去了解某一個DBMS產品的完整性控制策略。
數據庫系統概論習題集
第一章 緒論
一、選擇題
1.DBS是采用了數據庫技術的計算機系統,它是一個集合體,包含數據庫、計算機硬件、軟件和()。
A.系統分析員
B.程序員 C.數據庫管理員
D.操作員
2.數據庫(DB),數據庫系統(DBS)和數據庫管理系統(DBMS)之間的關系是()。
A.DBS包括DB和DBMS
B.DBMS包括DB和DBS
C.DB包括DBS和DBMS D.DBS就是DB,也就是DBMS
3.下面列出的數據庫管理技術發展的三個階段中,沒有專門的軟件對數據進行管理的是()。
I.人工管理階段
II.文件系統階段
III.數據庫階段
A.I 和 II
B.只有 II C.II 和 III
D.只有 I
4.下列四項中,不屬于數據庫系統特點的是()。
A.數據共享
B.數據完整性
C.數據冗余度高
D.數據獨立性高
5.數據庫系統的數據獨立性體現在()。
A.不會因為數據的變化而影響到應用程序
B.不會因為系統數據存儲結構與數據邏輯結構的變化而影響應用程序
C.不會因為存儲策略的變化而影響存儲結構
D.不會因為某些存儲結構的變化而影響其他的存儲結構
6.描述數據庫全體數據的全局邏輯結構和特性的是()。
A.模式
B.內模式 C.外模式 D.用戶模式
7.要保證數據庫的數據獨立性,需要修改的是()。
A.模式與外模式
B.模式與內模式
C.三層之間的兩種映射 D.三層模式
8.要保證數據庫的邏輯數據獨立性,需要修改的是()。
A.模式與外模式的映射
B.模式與內模式之間的映射
C.模式
D.三層模式
9.用戶或應用程序看到的那部分局部邏輯結構和特征的描述是(),它是模式的邏輯子集。
A.模式
B.物理模式
C.子模式 D.內模式
10.下述()不是DBA數據庫管理員的職責。
A.完整性約束說明 B.定義數據庫模式
C.數據庫安全 D.數據庫管理系統設計
選擇題參考答案:(1)C(2)A(3)D(4)C(5)B(6)A(7)C(8)A(9)C(10)D
二、簡答題
1.試述數據、數據庫、數據庫系統、數據庫管理系統的概念。
數據:描述事物的符號記錄稱為數據。數據的種類有文字、圖形、圖象、聲音、正文等等。數據與其語義是不可分的。
*解析:在現代計算機系統中數據的概念是廣義的。早期的計算機系統主要用于科學計算,處理的數據是整數、實數、浮點數等傳統數學中的數據等。現在計算機能存儲和處理的對象十分廣泛,表示這些對象的 數據也越來越復雜。
數據與其語義是不可分的。500這個數字可以表示一件物品的價格是500元,也可以表示一個學術會議參加的人數有500人。還可以表示一袋奶粉重500克。
數據庫:數據庫是長期儲存在計算機內、有組織的、可共享的數據集合。數據庫中的數據按一定的數據模型組織、描述和儲存,具有較小的冗余度、較高的數據獨立性和易擴展性,并可為各種用戶共享。
*解析:簡單地講,數據數據庫數據具有永久儲存、有組織和可共享三個特點。
數據模型是數據庫的核心概念。每個數據庫中數據的都是按照某一種數據模型來組織的。
數據庫系統:數據庫系統(DBS)是指在計算機系統中引入數據庫后的系統構成。數據庫系統由數據庫、數據庫管理系統(及其開發工具)、應用系統、數據庫管理員構成。
*解析:數據庫系統和數據庫是兩個概念。數據庫系統是一個人-機系統,數據庫是數據庫系統的一個組成部分。但是在日常工作中人們常常把把數據庫系統簡稱為數據庫。希望讀者能夠從人們講話或文章的上下文中區分“數據庫系統”和“數據庫”。不要引起混淆。
數據庫管理系統:數據庫管理系統(DBMS)是位于用戶與操作系統之間的一層數據管理軟件。用于科學地組織和存儲數據、高效地獲取和維護數據。DBMS主要功能包括數據定義功能、數據操縱功能、數據庫的運行管理功能、數據庫的建立和維護功能。
*解析:DBMS是一個大型復雜的軟件系統。是計算機中的基礎軟件。目前,專門研制DBMS的廠商及其研制的DBMS產品很多。著名的有美國IBM公司的DB2關系數據庫管理系統、IMS層次數據庫管理系統;美國ORACLE公司的ORACLE關系數據庫管理系統;SYBASE公司的SYBASE關系數據庫管理系統;美國微軟公司的SQL SERVER關系數據庫管理系統等等。
2.使用數據庫系統有什么好處?
使用數據庫系統的好處是由數據庫管理系統的特點或優點決定的。
使用數據庫系統的好處很多,例如可以大大提高應用開發的效率,方便用戶的使用,減輕數據庫系統管理人員維護的負擔等。
使用數據庫系統可以大大提高應用開發的效率。因為在數據庫系統中應用程序不必考慮數據的定義、存儲和數據存取的具體路徑,這些工作都由DBMS來完成。用一個通俗的比喻,使用了DBMS就如有了一個好參謀好助手,許多具體的技術工作都由這個助手來完成。開發人員就可以專注于應用邏輯的設計而不必為管理數據的許許多多復雜的細節操心。
還有,當應用邏輯改變,數據的邏輯結構需要改變時,由于數據庫系統提供了數據與程序之間的獨立性。數據邏輯結構的改變是DBA的責任,開發人員不必修改應用程序,或者只需要修改很少的應用程序。從而既簡化了應用程序的編制,又大大減少了應用程序的維護和修改。
使用數據庫系統可以減輕數據庫系統管理人員維護系統的負擔。因為DBMS在數據庫建立、運用和維護時對數據庫進行統一的管理和控制,包括數據的完整性、安全性,多用戶并發控制,故障恢復等等都由DBMS執行。
總之,使用數據庫系統的優點是很多的,既便于數據的集中管理,控制數據冗余,可以提高數據的利用率和一致性,又有利于應用程序的開發和維護。讀者可以在自己今后的工作中結合具體應用,認真加以體會和總結。
3.試述文件系統與數據庫系統的區別和聯系。
文件系統與數據庫系統的區別:文件系統面向某一應用程序,共享性差、冗余度大,獨立性差,紀錄內有結構、整體無結構,應用程序自己控制。
數據庫系統面向現實世界,共享性高、冗余度小,具有高度的物理獨立性和一定的邏輯獨立性,整體結構化,用數據模型描述,由數據庫管理系統提供數據安全性、完整性、并發控制和恢復能力。
讀者可以參考《概論》書中表1.1 中的有關內容。
文件系統與數據庫系統的聯系是:文件系統與數據庫系統都是計算機系統中管理數據的軟件。
*解析:
文件系統是操作系統的重要組成部分,而DBMS是獨立于操作系統的軟件。但是DBMS是在操作系統的基礎上實現的。數據庫中數據的組織和存儲是通過操作系統中文件系統來實現的。
讀者進一步學習數據庫管理系統實現的有關課程后可以對本題有深入的理解和全面的解答。因為DBMS的實現與操作系統中的文件系統是緊密相關的。例如,數據庫實現的基礎是文件,對數據庫的任何操作最終要轉化為對文件的操作。所以在DBMS實現中數據庫物理組織的基本問題是如何利用或如何選擇操作系統提供的基本的文件組織方法。這里我們就不具體展開了。
4.舉出適合用文件系統而不是數據庫系統的例子;再舉出適合用數據庫系統的應用例子。
·適用于文件系統而不是數據庫系統的應用例子
數據的備份,軟件或應用程序使用過程中的臨時數據存儲一般使用文件比較合適。早期功能比較簡單、比較固定的應用系統也適合用文件系統。
·適用于數據庫系統而非文件系統的應用例子
目前,幾乎所有企業或部門的信息系統都以數據庫系統為基礎,都使用數據庫。如一個工廠的管理信息系統(其中會包括許多子系統,如庫存管理系統、物資采購系統、作業調度系統、設備管理系統、人事管理系統等等),還比如學校的學生管理系統,人事管理系統,圖書館的圖書管理系統等等都適合用數據庫系統。希望同學們能舉出自己了解的應用例子。
5.試述數據庫系統的特點。
數據庫系統的主要特點有:
一、數據結構化:數據庫系統實現整體數據的結構化,這是數據庫的主要特征之一,也是數據庫系統與文件系統的本質區別。
*解析:注意這里“整體”兩個字。在數據庫系統中,數據不再針對某一個應用,而是面向全組織,具有整體的結構化。不僅數據是結構化的,而且數據的存取單位即一次可以存取數據的大小也很靈活。可以小到某一個數據項(如一個學生的姓名),大到一組記錄(成千上萬個學生記錄)。而在文件系統中,數據的存取單位只有一個:記錄。如一個學生的完整記錄。
二、數據的共享性高,冗余度低,易擴充 :數據庫的數據不再面向某個應用而是面向整個系統,因此可以被多個用戶、多個應用、用多種不同的語言共享使用。由于數據面向整個系統,是有結構的數據,不僅可以被多個應用共享使用,而且容易增加新的應用,這就使得數據庫系統彈性大,易于擴充。
*解析:
數據共享可以大大減少數據冗余,節約存儲空間,同時還能夠避免數據之間的不相容性與不一致性。
所謂“數據面向某個應用”是指數據結構是針對某個應用設計的,只被這個應用程序或應用系統使用。可以說數據是某個應用的“私有資源”。
所謂“彈性大”是指系統容易擴充也容易收縮,即應用增加或減少時不必修改整個數據庫的結構,或者只要做很少的修改。
我們可以取整體數據的各種子集用于不同的應用系統,當應用需求改變或增加時,只要重新選取不同的子集或加上一部分數據便可以滿足新的需求。
三、數據獨立性高:數據獨立性包括數據的物理獨立性和數據的邏輯獨立性。數據庫管理系統的模式結構和二級映象功能保證了數據庫中的數據具有很高的物理獨立性和邏輯獨立性。
*解析:
所謂“獨立性”即相互不依賴。數據獨立性是指數據和程序相互不依賴。即數據的邏輯結構或物理結構改變了,程序不會跟著改變。數據與程序的獨立,把數據的定義從程序中分離出去,加上數據的存取又由DBMS負責,簡化了應用程序的編制,大大減少了應用程序的維護和修改。
四、數據由DBMS統一管理和控制:數據庫的共享是并發的共享,即多個用戶可以同時存取數據庫中的數據甚至可以同時存取數據庫中同一個數據。為此,DBMS必須提供統一的數據控制功能,包括數據的安全性保護,數據的完整性檢查,并發控制和數據庫恢復。
*解析:
DBMS數據控制功能包括四個方面:
數據的安全性保護:保護數據以防止不合法的使用造成的數據的泄密和破壞;
數據的完整性檢查:將數據控制在有效的范圍內或保證數據之間滿足一定的關系;
并發控制:對多用戶的并發操作加以控制和協調,保證并發操作的正確性;
數據庫恢復:當計算機系統發生硬件故障、軟件故障,或者由于操作員的失誤以及故意的破壞影響數據庫中數據的正確性,甚至造成數據庫部分或全部數據的丟失時,能將數據庫從錯誤狀態恢復到某一已知的正確狀態(亦稱為完整狀態或一致狀態)。
下面我們可以得到“什么是數據庫”的一個定義:
數據庫是長期存儲在計算機內有組織的大量的共享的數據集合。它可以供各種用戶共享,具有最小冗余度和較高的數據獨立性。DBMS在數據庫建立、運用和維護時對數據庫進行統一控制,以保證數據的完整性、安全性,并在多用戶同時使用數據庫時進行并發控制,在發生故障后對系統進行恢復。
數據庫系統的出現使信息系統從以加工數據的程序為中心轉向圍繞共享的數據庫為中心的新階段。
6.數據庫管理系統的主要功能有哪些?
①數據庫定義功能;
②數據存取功能;
③數據庫運行管理;
④數據庫的建立和維護功能。
7.試述數據模型的概念、數據模型的作用和數據模型的三個要素。
數據模型是數據庫中用來對現實世界進行抽象的工具,是數據庫中用于提供信息表示和操作手段的形式構架。
一般地講,數據模型是嚴格定義的概念的集合。這些概念精確地描述系統的靜態特性、動態特性和完整性約束條件。因此數據模型通常由數據結構、數據操作和完整性約束三部分組成。
①數據結構:是所研究的對象類型的集合,是對系統的靜態特性的描述。
②數據操作:是指對數據庫中各種對象(型)的實例(值)允許進行的操作的集合,包括操作及有關的操作規則,是對系統動態特性的描述。
③數據的約束條件:是完整性規則的集合,完整性規則是給定的數據模型中數據及其聯系所具有的制約和依存規則,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。
*解析:
數據模型是數據庫系統中最重要的概念之一。同學們必須通過《概論》的學習真正掌握
數據模型的概念和作用。
數據模型是數據庫系統的基礎。任何一個DBMS都以某一個數據模型為基礎,或者說支持某一個數據模型。
數據庫系統中模型有不同的層次。根據模型應用的不同目的,可以將模型分成兩類或說兩個層次:一是概念模型,是按用戶的觀點來對數據和信息建模,用于信息世界的建模,強調語義表達能力,概念簡單清晰;另一是數據模型,是按計算機系統的觀點對數據建模,用于機器世界,人們可以用它定義、操縱數據庫中的數據。一般需要有嚴格的形式化定義和一組嚴格定義了語法和語義的語言,并有一些規定和限制,便于在機器上實現。
8.試述概念模型的作用。
概念模型實際上是現實世界到機器世界的一個中間層次。概念模型用于信息世界的建模,是現實世界到信息世界的第一層抽象,是數據庫設計人員進行數據庫設計的有力工具,也是數據庫設計人員和用戶之間進行交流的語言。
9.定義并解釋概念模型中以下術語:
實體,實體型,實體集,屬性,碼,實體聯系圖(E-R圖)
實體:客觀存在并可以相互區分的事物叫實體。
實體型:具有相同屬性的實體具有相同的特征和性質,用實體名及其屬性名集合來抽象和刻畫同類實體稱為實體型。
實體集:同型實體的集合稱為實體集。
屬性:實體所具有的某一特性,一個實體可由若干個屬性來刻畫。
碼:唯一標識實體的屬性集稱為碼。
實體聯系圖:E-R圖提供了表示實體型、屬性和聯系的方法:
· 實體型:用矩形表示,矩形框內寫明實體名。
· 屬性:用橢圓形表示,并用無向邊將其與相應的實體連接起來。
·聯系:用菱形表示,菱形框內寫明聯系名,并用無向邊分別與有關實體連接起來,同時在無向邊旁標上聯系的類型(1 : 1,1 : n或m : n)。
10.試給出三個實際部門的E-R圖,要求實體型之間具有一對一,一對多,多對多各種不同的聯系。
關系數據庫
一、選擇題
1.下面的選項不是關系數據庫基本特征的是()。
A.不同的列應有不同的數據類型
B.不同的列應有不同的列名
C.與行的次序無關
D.與列的次序無關
2.一個關系只有一個()。
A.候選碼
B.外碼
C.超碼
D.主碼
3.關系模型中,一個碼是()。
A.可以由多個任意屬性組成 B.至多由一個屬性組成
C.可有多個或者一個其值能夠唯一表示該關系模式中任何元組的屬性組成D.以上都不是
4.現有如下關系:
患者(患者編號,患者姓名,性別,出生日起,所在單位)
醫療(患者編號,患者姓名,醫生編號,醫生姓名,診斷日期,診斷結果)
其中,醫療關系中的外碼是()。
A.患者編號
B.患者姓名
C.患者編號和患者姓名
D.醫生編號和患者編號
5.現有一個關系:借閱(書號,書名,庫存數,讀者號,借期,還期),假如同一本書允許一個讀者多次借閱,但不能同時對一種書借多本,則該關系模式的外碼是()。
A.書號
B.讀者號
C.書號+讀者號
D.書號+讀者號+借期
6.關系模型中實現實體間 N:M 聯系是通過增加一個()。
A.關系實現
B.屬性實現
C.關系或一個屬性實現
D.關系和一個屬性實現
7.關系代數運算是以()為基礎的運算。
A.關系運算
B.謂詞演算
C.集合運算
D.代數運算
8.關系數據庫管理系統應能實現的專門關系運算包括()。
A.排序、索引、統計
B.選擇、投影、連接 C.關聯、更新、排序
D.顯示、打印、制表
9.五種基本關系代數運算是()。
A.∪ - × σ π
B.∪ - σ π
C.∪ ∩ × σ π
D.∪ ∩ σ π
10.關系代數表達式的優化策略中,首先要做的是()。
A.對文件進行預處理
B.盡早執行選擇運算
C.執行笛卡爾積運算
D.投影運算
11.關系數據庫中的投影操作是指從關系中()。
A.抽出特定記錄
B.抽出特定字段
C.建立相應的影像
D.建立相應的圖形
12.從一個數據庫文件中取出滿足某個條件的所有記錄形成一個新的數據庫文件的操作是()操作。
A.投影
B.聯接
C.選擇
D.復制
13.關系代數中的聯接操作是由()操作組合而成。
A.選擇和投影 B.選擇和笛卡爾積
C.投影、選擇、笛卡爾積
D.投影和笛卡爾積
14.自然聯接是構成新關系的有效方法。一般情況下,當對關系R和S是用自然聯接時,要求R和S含有一個或者多個共有的()。
A.記錄
B.行
C.屬性
D.元組
15.假設有關系R和S,在下列的關系運算中,()運算不要求:“R和S具有相同的元數,且它們的對應屬性的數據類型也相同”。
A.R∩S
B.R∪S
C.R-S
D.R×S
16.假設有關系R和S,關系代數表達式R-(R-S)表示的是()。
A.R∩S
B.R∪S
C.R-S
D.R×S
17.下面列出的關系代數表達是中,那些式子能夠成立()。
ⅰ.σf1(σf2(E))= σf1∧f2(E)
ⅱ.E1∞E2 = E2∞E1
ⅲ.(E1∞E2)∞E3 = E1∞(E2∞E3)
ⅳ.σf1(σf2(E))=σf2(σf1(E))
A.全部
B.ⅱ和ⅲ C.沒有
D.ⅰ和ⅳ
18.下面四個關系表達式是等價的,是判別它們的執行效率()。
E1 =πA(σ B=C ∧ D=E′(R×S))
E2 =πA(σ B=C(R× σD=E′(S))
E3 =πA(R∞B=CσD=E′(S))
E3 =πA(σD=E′(R∞B=C S))
A.E3最快
B.E2最快 C.E4最快 D.E1最快
19.有關系SC(S_ID,C_ID,AGE,SCORE),查找年齡大于22歲的學生的學號和分數,正確的關系代數表達式是()。
ⅰ.πS_ID,SCORE(σ age>22(SC))
ⅱ.σ age>22(πS_ID,SCORE(SC))
ⅲ.πS_ID,SCORE(σ age>22(πS_ID,SCORE,AGE(SC)))
A.ⅰ和 ⅱ
B.只有ⅱ正確
C.只有 ⅰ正確
D.ⅰ和ⅲ正確
選擇題參考答案:(1)A(2)D(3)C(4)A(5)D(6)A(7)C(8)B(9)A(10)B
(11)B(12)C(13)B(14)C(15)D(16)A(17)C(18)A(19)D
二、簡答題
1.試述關系模型的三個組成部分。
2.試述關系數據語言的特點和分類。
3.設有一個SPJ數據庫,包括S,P,J,SPJ四個關系模式:
S(SNO,SNAME,STATUS,CITY);
P(PNO,PNAME,COLOR,WEIGHT);
J(JNO,JNAME,CITY);
SPJ(SNO,PNO,JNO,QTY);
供應商表S由供應商代碼(SNO)、供應商姓名(SNAME)、供應商狀態(STATUS)、供應商所在城市(CITY)組成;零件表P由零件代碼(PNO)、零件名(PNAME)、顏色(COLOR)、重量(WEIGHT)組成;工程項目表J由工程項目代碼(JNO)、工程項目名(JNAME)、工程項目所在城市(CITY)組成;供應情況表SPJ由供應商代碼(SNO)、零件代碼(PNO)、工程項目代碼(JNO)、供應數量(QTY)組成,表示某供應商供應某種零件給某工程項目的數量為QTY。
試用關系代數完成如下查詢:
(1)求供應工程J1零件的供應商號碼SNO;
(2)求供應工程J1零件P1的供應商號碼SNO;
(3)求供應工程J1零件為紅色的供應商號碼SNO;
(4)求沒有使用天津供應商生產的紅色零件的工程號JNO;
(5)求至少用了供應商S1所供應的全部零件的工程號JNO。
4.定義并理解下列術語,說明它們之間的聯系與區別:
(1)域,笛卡爾積,關系,元組,屬性
(2)主碼,候選碼,外碼
(3)關系模式,關系,關系數據庫
5.試述關系模型的完整性規則。在參照完整性中,為什么外碼屬性的值有時也可以為空?什么情況下才可以為空?
6.試述等值連接與自然連接的區別和聯系。
7.關系代數的基本運算有哪些?
8.試用關系代數的基本運算來表示其他運算。
SQL語言
一、選擇題
1.SQL語言是()的語言,容易學習。
A.過程化
B.非過程化
C.格式化
D.導航式
2.SQL語言的數據操縱語句包括SELECT、INSERT、UPDATE、DELETE等。其中最重要的,也是使用最頻繁的語句是()。
A.SELECT B.INSERT
C.UPDATE D.DELETE
3.在視圖上不能完成的操作是()。
A.更新視圖
B.查詢
C.在視圖上定義新的表
D.在視圖上定義新的視圖
4.SQL語言集數據查詢、數據操縱、數據定義和數據控制功能于一體,其中,CREATE、DROP、ALTER語句是實現哪種功能()。
A.數據查詢
B.數據操縱
C.數據定義 D.數據控制
5.SQL語言中,刪除一個視圖的命令是()。
A.DELETE
B.DROP
C.CLEAR
D.REMOVE
6.在SQL語言中的視圖VIEW是數據庫的()。
A.外模式
B.模式
C.內模式
D.存儲模式
7.下列的SQL語句中,()不是數據定義語句。
A.CREATE TABLE B.DROP VIEW
C.CREATE VIEW D.GRANT
8.若要撤銷數據庫中已經存在的表S,可用()。
A.DELETE TABLE S B.DELETE S
C.DROP TABLE S D.DROP S
9.若要在基本表S中增加一列CN(課程名),可用()。
A.ADD TABLE S(CN CHAR(8))
B.ADD TABLE S ALTER(CN CHAR(8))
C.ALTER TABLE S ADD(CN CHAR(8))D.ALTER TABLE S(ADD CN CHAR(8))
10.學生關系模式 S(S#,Sname,Sex,Age),S的屬性分別表示學生的學號、姓名、性別、年齡。要在表S中刪除一個屬性“年齡”,可選用的SQL語句是()。
第四篇:電商期末考試題及答案
一填空題
1.電子商務的基本功能為__內容管理、協議管理、網上交易 2.網絡上用人性化的名字表示主機地址稱為__域名__。
3.FTP中將網頁文件從客戶機發送到服務器的過程稱為____上載____。4.網上市場調查的方法有網上__直接__市場調查和網上___間接___市場調查。5.由供方與需方以外的物流企業提供物流服務的業務模式稱為__第三方物流__。6.當前國際上,電子商務按照英文縮寫分為_ EC狹義__和_EB廣義___。7.網上商店銷售的商品按商品的性質分為_實體_商品和__虛擬_商品。8.FTP中將網頁文件從客戶機發送到服務器的過程稱為__上載_。9.TCP/IP協議稱為_傳輸控制___協議和__/互聯網絡_協議。
10.承擔網上安全電子交易認證服務,能簽發數字證書并能確認用戶身份的服務機構為——CA認證中心__。
11.電子商務發展可以分為兩個主要階段,即開始于20世紀80年代中期的___基于EDI電子商務和開始于20世紀90年初期___基于Internet電子商務
12.CA認證中心的主要職能是__證書的頒發__、__證書的更新__、_ 證書的查詢__、____ 證書的作廢__、__證書的歸檔___。13.目前Internet使用的基本協議是_ TCP/IP _。
二、單選題(共20分)
1.以下電子商務模式中屬于企業與企業間電子交易的是(A)。A、B TO B B、B TO C C、C TO C D、B TO G 2.以下域名路徑輸入正確的是(c)。A html://www.tmdps.cn的,必須在CNNIC登記備案 20.網絡營銷作為一種營銷未來方式,下列說法正確的是(BD)。A.網絡營銷只是局限于一種營銷手段和媒體的改變 B.將影響到營銷所涉及到的各個方面 C.已經與傳統營銷方式完全整合
D.網絡營銷與傳統營銷最終將形成相互影響和相互促進的局面最后實現融洽的內在統一 21.關于數字證書的原理說法錯誤的是(BC)。A.采用公鑰體制
B.每個用戶自己設定一把公有密鑰,用它進行解密和簽名
C.當發送一份保密文件時,發送方使用接收方的私鑰對數據加密,而接收方則使用自己的私鑰解密 D.設定一把公共密鑰為一組用戶所共享,用戶加密和驗證簽名
22.以下哪些屬于網上購物的購物車應該具備的功能(ACD)。A.自動跟蹤并記錄消費者在網上購物過程中所選擇的商品 B.不允許購物者更新購物車中的商品 C.自動計算用戶所購買商品的總價 D.允許用戶隨時查詢購物車中有關信息
23.如何提高在線調查結果的質量,是開展網上市場調查過程的關鍵。因此我們應遵循以下原則:(ABCDA.吸引盡可能多的人參與調查 B.公布保護個人信息聲明 C.避免濫用市場調查功能
D.設計大獎作為補償或刺激參與者的積極性
24.以下對網絡營銷和傳統營銷未來發展的認識正確的是(BCD)。A.互聯網作為新的媒體,它將覆蓋所有的群體 B.互聯網作為一種有效的渠道有著自己的特點和優勢)。
C.傳統一些以人為主的營銷策略所具有獨特的親和力是網絡營銷所不具備的 D.網絡營銷不會完全替代傳統營銷
25.以下(ACDE)是政府上網的主要目的。A.節省辦公費用,提高工作效率 B.政務公開
C.節省政府招標時間和費用 D.便于政府與公眾加強溝通,利于政府樹立良好形象 26.以下關于數字簽名說法不正確的是(AC)。A.保證信息是由對方簽名發送的,簽名者不能否認或難以否認 B.保證信息是由簽名者自己簽名發送的,簽名者不能否認或難以否認 C.保證信息簽發后未曾做過任何修改,簽發的文件是真實文件
D.保證信息自簽發后到收到為止沒有做任何修改,簽發的文件是真實文件 27.以下關于數字時間戳說法正確的是(ACD)。A.用來證明消息的收發時間的 B.數字時間戳是由簽署人自己寫上的 C.該服務有效地為文件發表時間提供了佐證 D.它是由認證單位DTS添加的 E.是以發送方發送文件的時間為依據
28.數字證書的作用是(ABCD)。A.信息的保密性 B.交易者身份的確定性 C.交易不可否認性 D.交易不可修改性
29.以下關于第三方物流企業與客戶之間的關系說法正確的是(BCD)。A.第三方物流企業與客戶是競爭關系 B.第三方物流企業是客戶的戰略同盟者
C.第三方物流企業是客戶的戰略投資人,也是風險承擔者 D.利益一體化是第三方物流企業的利潤基礎
30.因特網的發展對企業及其經營的影響表現在(ACD)。A.網絡技術使得大眾市場終結,最終可達到針對每一個用戶的需求進行生產 B.互聯網使得大企業的規模優勢更加明顯 C.企業的組織層次越來越少 D.企業競爭將以客戶為焦點
31.網上單證的設計面對網絡消費者,所以必須做到(ABD)。
A、格式簡潔 B、界面風格友好 C、詳盡的說明 D、功能完整 E、色彩艷麗
32.網絡商務信息相對于傳統商務信息,具有以下顯著的特點(ACE)。A、實效性強 B、傳遞速度慢 C、準確性高 D、更新不及時 E、便于存儲
33.TCP/IP協議規定,每個IP地址由(AD)組成。A、網絡地址 B、端口地址 C、協議地址 D、主機地址 E、機器地址
34.網絡市場調查的特點是(ABCDE)。
D 及時調整性 B、組織簡單,費用低廉 C、高效性 D、無時空限制 E、客觀性
35.旗幟廣告媒體選擇需要考慮的有(ABDE)。B 廣告費用 B、廣告的收益 C、廣告的位置 D、廣告的效率 E、媒體的形象是否與你廣告推廣形象吻合
36.物流系統的功能要素一般包括運輸、儲存保管、(ABCDE)。B 包裝 B、搬運裝卸 C、流通加工 D、配送 E、物流信息處理
37.CA認證中心的職能為(ABDE)。
A、證書更新 B、證書發放 C、證書打印 D、證書撤消 E、證書驗證
38.按密鑰和相關加密程序類型可把加密分為三類(BDE)。A、數字簽名 B、散列編碼 C、數字時間戳 D、對稱加密 E、非對稱加密 39.SET協議(安全電子交易)所涉及的對象有(ABCDE)。A、消費者 B、在線商店 C、收單銀行 D、認證中心 E、電子貨幣發行機構 40.電子現金必須滿足如下一些要求(ACDE)。A、獨立性 B、可掛失 C、不可復用 D、匿名性 E、可分性
41.當前,在國內網上購物可以選擇下列哪些付款方式(ABCDE)。B 郵局匯款 B、銀行電匯 C、貨到付款 D、在線支付 E、招行&<47;一網通&<48;42.目前SET協議定義有三種方式(ADE)。
A、E_mail B、傳真方式 C、電話方式 D、Web E、離線方式
43.防火墻具有的基本功能包括(ABCDE)。
C 過濾進出網絡的數據包 B、管理進出網絡的訪問行為 D 封堵某些禁止的訪問行為 D、記錄通過防火墻的信息內容和活動 E、對網絡攻擊進行檢測和告警
44.按照物流在社會再生產過程中不同階段的活動范圍和業務性質,一般可將物流系統分為(ABCDE)。A、供應物流 B、生產物流 C、銷售物流 D、回收物流 E、廢棄物流 45.數字證書一般有三種類型,分別是(CDE)。A、銀行數字證書 B、信用數字證書 C、個人數字證書 D、企業(服務器)數字證書 E、軟件(開發者)數字證書
四.簡答
1.相對于傳統的商務信息網絡商務信息的分為哪些不同的等級? 第一級是免費商務信息。這些信息主要是社會公益性的信息。第二級是收取較低費用的信息。這些信息是屬于一般性的普通類信息。
第三級是收取標準信息費的信息。是屬于知識、經濟類的信息,收費采用成本加利潤的資費標準。
第四級是優質優價的信息。這類信息是有極高使用價值的專用信息,如重要的市場走向分析、網絡暢銷商品的情況調查、新產品新技術信息、專利技術以及其它獨特的專門性的信息等.2.在網上銀行電子支付中,SSL協議與SET協議的區別是什么?
SSL與SET的區別:SSL協議能確保兩個應用程序之間通訊內容的保密性和數據的完整性。SSL協議層包括兩個協議子層:SSL記錄協議與SSL握手協議。
SET涵蓋了信用卡在電子商務交易中的交易規定、信息保密、資料完整即數字認證、數字簽名等,這一標準被公認為全球國際網絡的標準,其交易形態將成為未來&<47;電子商務&<48;的典范。SSL協議屬于網絡對話層標準協議,SET協議是對話層之上的應用層的標準協議。
3.網上商店銷售的商品分為實體性商品和虛擬商品,它們具有什么不同點?
實體性商品:是指具有物理形態的物質形態產品,是人可以通過視覺和觸覺所能感覺到的。如:圖書、家電、日用品等等。虛擬商品:一般是無形的,即使表現出一定的形態也是通過其載體體現出來的。如:網絡軟件、MP3音樂、商務信息等等。4.為什么說現代物流是實施電子商務的關鍵?
物流現代化中最重要的部分是物流信息化,物流的信息化是電子商務物流的基本要求,是企業信息化的重要組成部分,表現為:物流信息的商品化,物流信息收集的數據化和代碼化,物流信息處理的電子化和計算機化,物流信息傳遞的標準化和實時化,物流存儲的數字化;物流信息化能更好地協調生產和銷售、運輸、存儲等環節的聯系,對優化供貨程序、縮短物流時間及降低庫存具有重要意義,所以說物流現代化是電子商務的基礎。
5.在保證電子商務交易安全中經常用到數字簽名,什么是數字簽名及其實現原理?
數字簽名(digital signature):是將摘要用發送者的私鑰加密,與原文一起傳送給接收者。接收者只有用發送者的公鑰才能解密被加密的摘要,在電子商務安全保密系統中,數字簽名技術有著特別重要的地位,在電子商務安全服務中的源鑒別、完整性服務、不可否認服務中都要用到數字簽名技術。1.為什么說網絡營銷與傳統營銷將最終實現整合?
網絡營銷作為新的營銷理念和策略,憑借互聯網特性對傳統經營方式產生了巨大的沖擊,但這并不等于說網絡營銷將完全取代傳統營銷,網絡營銷與傳統營銷是一個整合的過程。這是因為:首先,互聯網作為新興的虛擬市場,它覆蓋的群體只是整個市場中某一部分群體,許多的群體由于各種原因還不能或者不愿意使用互聯網,如老人和落后國家地區,因此傳統的營銷策略和手段則可以覆蓋這部分群體。其次,互聯網作為一種有效的渠道有著自己的特點和優勢,但對于許多消費者來說,由于個人生活方式不愿意接收或者使用新的溝通方式和營銷渠道,如許多消費者不愿意在網上購物,而習慣在商場上一邊購物一邊休閑。第三,互聯網作為一種有效溝通方式,可以方便企業與用戶之間直接雙向溝通,但消費者有著自己個人偏好和習慣,愿意選擇傳統方式進行溝通,如報紙有網上電子版本后,并沒有沖擊原來的紙張印刷出版業務,相反起到相互促進的作用。最后,互聯網只是一種工具,營銷面對的靈性的人,因此傳統一些以人為主的營銷策略所具有獨特的親和力是網絡營銷沒有辦法替代的。隨著技術的發展,互聯網將逐步克服上述不足,在很長一段時間內網絡營銷與傳統營銷是相互影響和相互促進的局面,最后實現融洽的內在統一,在將來沒有必要再談論網絡營銷了,因為營銷的基礎之一就是網絡。2.實施電子商務安全的基本要素有哪些,并分別加以闡述? 1)信息的保密性:是指信息在傳輸或存儲過程中不被他人竊取;
2)信息的完整性:由于數據輸入時的意外差錯或欺詐行為,可能導致貿易各方信息的差異;
3)信息的有效性:電子商務以電子形式取代了紙張,如何保證這種電子形式貿易信息的有效性是開展電子商務的前提。4)信息的不可抵賴性:要求在交易信息的傳輸過程中為參與交易的個人、企業或國家提供可靠的標識,使原發方在發送數據后不能抵賴;接收方在接收數據后也不能抵賴。
5)交易身份的真實性:交易者身份的真實性是指交易雙方確實是存在的,不是假冒的。
6)系統的可靠性:電子商務系統是計算機系統,其可靠性是指防止由于計算機失效、程序錯誤、傳輸錯誤、硬件故障、系統軟件錯誤、計算機病毒和自然災害等所產生的潛在威脅,并加以控制和預防,確保系統安全可靠。1.請敘述建立電子商務網站的基本過程,以及當前進行網站推廣的形式有哪些?
建立電子商務網站可分為申請域名、申請空間、建立網站框架、制作首頁、建立鏈接、網頁測試與發布等步驟。1)電子郵件; 2)友情鏈接; 3)搜索引擎; 4)討論組; 5)利用網絡廣告;6)利用傳統方式。
2.當前網上銀行電子支付中執行SET協議的目標是什么? 1)保證信息在互聯網上的安全傳輸,防止數據被竊取;
2)保證電子商務參與者信息的相互隔離,即銀行與客戶之間數據的隔離; 3)對在線商店的信譽程度認證,同時還有消費者、在線商店與銀行間的認證; 4)保證網上交易的實時性,使所有的支付過程都是在線的;
5)規范協議和消息格式,促使不同軟件具有兼容性和互操作功能,可以運行在不同的計算機平臺上。3.在保證電子商務交易安全中經常用到數字簽名,什么是數字簽名及其實現原理?
數字簽名(digital signature):是將摘要用發送者的私鑰加密,與原文一起傳送給接收者。
接收者只有用發送者的公鑰才能解密被加密的摘要,在電子商務安全保密系統中,數字簽名技術有著特別重要的地位,在電子商務安全服務中的源鑒別、完整性服務、不可否認服務中都要用到數字簽名技術。4.為什么說現代物流是實施電子商務的關鍵?
當前制約電子商務發展的瓶頸中最突出的就是物流問題,即物流與信息流、商流、資金流嚴重脫節的問題。沒有物流,電子商務只能是一張空頭支票。1)物流保障生產
合理化、現代化的物流,通過降低費用從而降低成本、優化庫存結構、減少資金占壓、縮短生產周期,保障了現代化生產的高效進行。
2)物流是實現個性化服務的保證
電子商務的出現,在最大程度上方便了消費者,而物流是電子商務實現個性化服務的最終保證,缺少了現代化的物流系統,電子商務給消費者帶來的購物便捷等于零。3)物流服務于商流
在整個電子商務的交易過程中,物流實際上是以商流的后續者和服務者的姿態出現的。沒有現代化的物流,任何輕松的商流活動都將退化為一紙空文。
5.網絡營銷對傳統營銷策略的影響有哪些? 1)對傳統產品品牌策略的影響; 2)對定價策略的影響; 3)對傳統營銷渠道的影響; 4)對傳統廣告策略的影響。
1.電子商務交易中始終貫穿著商流、物流、信息流和資金流,請論述四流之間的相互關系?
商流、物流、信息流和資金流是從商品流通內部結構描述流通過程的概念。它們之間的關系密切,可以說失去其中任何一個,另外的都不會長期存在下去。四&<47;流&<48;是相互依存的前提條件,又是相互依存的基礎。主要表現在:
1)信息流是由商流和物流引起并反映其變化的各種信息、情報、資料、指令等在傳遞過程中形成的經濟活動。缺少信息流,商流和物流都不能順利地進行。
2)資金流表示電子支付中,電子現金、電子支票、信用卡中資金的回饋過程。
3)商流指商品所有權的轉移過程,物流指物質實體的運動過程。商流和物流是前繼和后起關系。
4)信息流既制約著商流,又制約著物流,它為商品和物流提供預測和決策依據。同時,信息流又是將商流和物流相互溝通,以完成商品流通的全過程。
5)四流之間相輔相成,緊密聯系,相互促進。因而,四流不僅有利于提高商品流通企業的經濟效益,而且也有利于提高社會效益。
2.實施電子商務安全的基本要素有哪些,并分別加以闡述? 1)信息的保密性:是指信息在傳輸或存儲過程中不被他人竊取;
2)信息的完整性:由于數據輸入時的意外差錯或欺詐行為,可能導致貿易各方信息的差異;
3)信息的有效性:電子商務以電子形式取代了紙張,如何保證這種電子形式貿易信息的有效性是開展電子商務的前提。4)信息的不可抵賴性:要求在交易信息的傳輸過程中為參與交易的個人、企業或國家提供可靠的標識,使原發方在發送數據后不能抵賴;接收方在接收數據后也不能抵賴。
5)交易身份的真實性:交易者身份的真實性是指交易雙方確實是存在的,不是假冒的。
6)系統的可靠性:電子商務系統是計算機系統,其可靠性是指防止由于計算機失效、程序錯誤、傳輸錯誤、硬件故障、系統軟件錯誤、計算機病毒和自然災害等所產生的潛在威脅,并加以控制和預防,確保系統安全可靠。
第五篇:建筑制圖期末考試題及答案
命題教師:_____________教研室主任審核:_____________院長(主任)審批:_____________印數:_______ ─────────────────────────────────────────────────────── ……………………………裝訂線……………………………… 20 13--20 14 學年 第 二 學期 《建筑制圖》 課程試卷 適用專業:
建筑工程管理 試卷類別:
A 卷 考試時間:
分鐘 考試形式:
閉卷 班級 姓名 學號 題號 一 二 三 四 五 六 七 八 九 十 總分 得分 一、填空題(每空1分,共16分)1、國標規定,定位軸線用 線表示。
2、圖樣上的尺寸標注包括尺寸線、、、。
3、在建筑平面圖中,橫向定位軸線應用 從 至 依次編寫;
豎向定位軸線應用 從 至 順序編寫。
4、建筑圖樣(平、立、剖面)中所標注的尺寸則以 為單位;
標高都以 為單位。
5、在某一張建施圖中,有索引符號 ,則該詳圖所在圖紙編號為。
6、鋼筋混凝土構件中的鋼筋按其作用可分為受力筋、、、。
二、選擇題(每題1分,共10分)1、A0號幅面的圖紙其尺寸為()mm A、1189×841 B、1000×800 C、841×594 D、594×420 2、直線AB的V面投影反映實長,該直線為()。
A、水平線? B、正平線?? C、側平線?? D、側垂線 3、正面投影與側面投影應保持()關系。
A、長度相等且對正 B、寬度相等 C、高度相等且平齊 D、長、寬、高都相等 4、已知點C坐標為C(10,5,25),則點C到H面的距離為()。
A、10mm???? ?B、15mm???? C、5mm???? D、25mm 5、有一棟房屋在圖上量得長度為50cm,用的是1:100比例,其實際長度是()。
A、5m B、50m C、500m D、5000m 6、下列投影圖中正確的1?1剖面圖是()。
7、立面圖不能按()方式命名。
A、朝向 B、軸線 C、色彩 D、主出入口 8、在建筑平面圖中,位于2和3軸線之間的第一根附加軸線的正確表達 為()。
(A)(B)(C)(D)9、不屬于建筑平面圖的是()。
A、基礎平面圖 B、底層平面圖 C、標準層平面圖 D、屋頂平面圖 10、在結構平面圖中,WKL代表構件()。
A、屋面板? B、框支梁 ?C、樓層框架梁 ? D、屋面框架梁 三、作圖題(共50分)1、(8分)完成五邊形的水平投影。
2、(8分)已知圖形的V面與W面投影,求圖形的H面投影。
3、(12分)根據兩面視圖補畫第三面視圖并畫出正等測軸測圖。
4、(12分)根據梁的投影圖,作出梁的1-1、2-2斷面圖(材料:鋼筋混凝土)5、(10分)在指定位置繪出下面構件的1-1剖面圖。
四、讀圖,完成下列填空(24分)(1)看下圖回答問題 1、該柱的編號是。
2、該柱的截面尺寸是 。
3、4 22表示。
4、φ8@200表示 。
(2)看下圖回答問題 1、KL5(2A)表示。
2、梁截面尺寸是 。
3、228表示 。
4、φ8@150/200(2)表示 。
(3)看下圖回答問題 首層平面圖1:100 1、可判斷該平面圖為 層平面圖,建筑物的朝向是。建筑物外墻厚。
2、列舉該層窗的編號及其寬度:
、;
列舉該層門的編號及其寬度:
、、、。
3、剖切符號可知,剖切平面1-1通過 ,投射方向是向_____________。
4、本住宅樓為磚混結構, 沿外墻四周布置,寬為。
5、室外臺階與室內地面的高差是 。
6、樓梯間的開間尺寸為__ _,進深尺寸為__ _。
一、填空題(每空1分,共16分)1、細單點長劃線 2、尺寸界線、尺寸起止符號、尺寸數字 3、阿拉伯數字、左、右;
大寫拉丁字母、下、上 4、mm(毫米)、m(米)5、3 6、架力筋、分布筋、箍筋 二、選擇題(每題1分,共10分)1、A 2、B 3、C 4、D 5、B 6、B 7、C 8、A 9、A 10、D 三、作圖題(共50分)1、(8分)完成五邊形的水平投影。
2、(8分)已知圖形的V面與W面投影,求圖形的H面投影。
3、(12分)根據兩面視圖補畫第三面視圖并畫出正等測軸測圖。
4、(12分)根據梁的投影圖,作出梁的1-1、2-2斷面圖(材料:鋼筋混凝土)5、(10分)在指定位置繪出下面構件的1-1剖面圖。
四、讀圖,完成下列填空(24分)一、1、KZ2 2、500mm×600mm 3、角筋為4條直徑22mm的Ⅱ級鋼筋 4、直徑8mm的Ⅰ級鋼筋,間距200mm布置 二、1、框架梁KL5共有2跨,其中一端有懸臂 2、300mm×600mm 3、梁上部用2條直徑28mm的Ⅱ級鋼筋作通長筋 4、箍筋用直徑8mm的Ⅰ級鋼筋,加密區間距150mm布置,非加密區間距200mm布置,采用2肢箍 三、1、底層(首層、一層);
坐北朝南;
240mm 2、C1,1500mm、C2,1200mm;
M1,1800mm、M2,1200mm、M3,1000mm、M4,800mm。
3、C2、M1、臺階、樓梯間;
向西;
4、散水;
900mm 5、20mm 6、3600mm、4500mm 建筑制圖與視圖習題及答案 一、填空題 1、工程建設制圖中的主要可見輪廓線應選用 粗實線 2、圖樣上的尺寸包括 尺寸界線、尺寸線、_尺寸起止符號、尺寸數字 3、標高有相對標高和 絕對標高,相對標高的零點是青島附近黃海海平面 4、房屋施工圖由于專業分工的不同,分為 建筑施工圖、結構施工圖和 設備施工圖 5、指北針圓的直徑宜為 24mm,用細實線繪制。
6、在建筑平面圖中,橫行定位軸線應用 阿拉伯數字 從 左 至 右 依次編寫;
豎向定位軸線應用 大寫拉丁字母 從 下 至 上 順序編寫。
7、工程制圖圖幅幅面主要有 5 種。
8、根據不同的剖切方式,剖面圖有全 剖面圖、階梯 剖面圖、展開 剖面圖、局部 剖面圖和 分層 剖面圖。
9、為保護鋼筋、防蝕防火,并加強鋼筋與混凝土的粘結力,鋼筋至構件表面應有一定厚度的混凝土,這層混凝土稱為__混凝土保護層__。
10、民用建筑一般由基礎、___墻和柱____、樓板層和地坪層、___樓梯__、屋頂、門窗等六大部分組成。
11、混凝土是由__水泥、沙子、石子和水__按一定例配合,經攪拌、搗實、養護而成的一種人造石。
二、單選題 1、在建筑平面圖中,位于2和3軸線之間的第一根分軸線的正確表達為(A)。
(A)(B)(C)(D)2.建筑的耐火等級可分為(B)級。
A、3 B、4 C、5 D、6 3、填充不得穿越尺寸數字,不可避免時。應該是(A)A、圖線斷開 B、二者重合 C、省略標注 D、前述均可 4、7-9層的住宅屬于(C)A、低層 B、多層 C、中高層 D、高層 5、建筑平面圖中的中心線、對稱一般應用。(C)A、細實線B、細虛線C、細單點長畫線D、吸雙點畫線 6、建筑施工圖中定位軸線端部的圓用細實線繪制,直徑為(A)。
A、8-10mm B、11-12mm C、5-7mm D、12-14mm 7、建筑施工圖中索引符號的圓的直徑為(B)。
A、8mm B、10mm C、12mm D、14mm 8、建筑施工圖上一般注明的標高是(B)。
A、絕對標高 B、相對標高 C、絕對標高和相對標高 D、要看圖紙上的說明 9、建筑物結構承重可分為(D)。
A、墻承重式、框架結構 B、墻承重式 C、半框架結構,框架結構 D、墻承重式、框架結構、空間結構、半框架結構 10、有一棟房屋在圖上量得長度為50cm,用的是1:100比例,其實際長度是(B).A、5m B、50m C、500m D、5000m 11、建筑工程圖中尺寸單位,總平面圖和標高單位用(C)為單位。
A、mm B、cm C、m D、km 12、施工平面圖中標注的尺寸只有數量沒有單位,按國家標準規定單位應該是(A)。
A、mm B、cm C、m D、km 13.下列投影圖中正確的1?1剖面圖是(B)。
14、下列立面圖的圖名中錯誤的是(A)A、房屋立面圖 B、東立面圖 C、⑦-----①立面圖 D、-----立面圖 15.關于標高,下列(C)的說法是錯誤的。
A.負標高應注“-” B.正標高應注“+” C.正標高不注“+” D.零標高應注“±” 16.立面圖不能按(C)方式命名。
A.朝向 B.軸線 C.色彩 D.主出入口 17.“φ8@200”沒能表達出這種鋼筋的(A)。
A.彎鉤形狀 B.級別 C.直徑 D.間距 18.詳圖索引符號為 圓圈內的3表示(C)。
A.詳圖所在的定位軸線編號 B.詳圖的編號 C.詳圖所在的圖紙編號 D.被索引的圖紙的編號 19、主要用來確定新建房屋的位置、朝向以及周邊環境關系的是(C)。
A 建筑平面圖 B建筑立面圖 C 總平面圖 D功能分區圖 20、墻體是房屋的一個重要組成部分,按墻的平面位置不同分為(B).A、縱墻與橫墻 B、外墻和內墻 C、承重墻與非承重墻 D、磚墻與鋼筋混凝土墻 21、下列敘述中不正確的是(C)A、3%表示長度為100.高度為3的坡度傾斜度 B、指北針一般畫在總平面圖和底層平面圖上 C、總平面圖中的尺寸單位為毫米,標高尺寸單位為米 D、總平面圖的所有尺寸單位均為米,標注至小數點后二位 22、鋼筋工程施工中要看懂(C)。
A、總平面圖 B、土建施工圖 C、結構施工圖 D、土建施工圖與結構施工圖 23、基礎各部分形狀、大小、材料、構造、埋置深度及標號都能通過(B)反映出來。
A、基礎平面圖 B、基礎剖面圖 C、基礎詳圖 D、總平面圖 24、房屋結構中框架代號為.(A)A、KJ B、GJ C、CJ D、ZJ 25、結構施工土中的圈梁表示(B).A、GL B、QL C、JL D、KL 26、結構施工圖中的樓梯梁的代號為。(D)A、GL B、DL C、JL D、TL 27、在施工圖中,M代表(D).A、窗 B、墻 C、梁 D、門 28、在施工中,L代表(C).A、板 B、柱 C、梁 D、墻 29、在施工圖中,C代表(B).A、門 B、窗 C、梁 D、柱 30、在鋼筋混凝土構件代號中, “ GL”是表示(B).A、圈梁 B、過梁 C、連系梁 D、基礎梁 31、在鋼筋混凝土構件代號中, “ JL”是表示(D).A、圈梁 B、過梁 C、連系梁 D、基礎梁 32、φL表示(B)。
A Ⅰ級光圓鋼筋 B 冷拉Ⅰ級鋼筋 C Ⅰ級錳硅人字紋鋼筋 D Ⅰ級螺紋鋼筋 33、標高符號的三角形為等腰直角三角形,髙約(A)mm。
A 3 B 5 C 6 D 8 33、不屬于建筑平面圖的是(A)。
A、基礎平面圖 B、底層平面圖 C、標準層平面圖 D、屋頂平面圖 34下列建筑中不屬于公共建筑的是(D)。
A、學校 B、旅社 C、醫院 D、宿舍 35、一級建筑的耐久年限為(D)年。
A、15-25 B、25-50 C、50-100 D、100以上 36、對于風向頻率玫瑰圖說法錯誤的是(A)。
A、它是根據某一地區全年平均統計的各個方向順風次數的百分數值,按一定比例繪制 B、實線表示全年風向頻率 C、虛線表示夏季風向頻率 D、圖上所表示的風的吹向是指從外面吹向該地區中心,且畫在總平面上 37、下列拉丁字母中,可以用做定位軸線編號的是(A)。
A、L B、I C、O D、Z 38、在樓板平面圖中,如下圖所示的鋼筋表示(B)鋼筋。
A、頂層 B、底層 C、頂層和底層 D、都不是 39、梁編號KL5(3A)表示(A)。
A、框架梁KL5共有3跨,其中一端有懸挑。
B、框架梁KL5共有5跨,其中兩端有懸挑。
C、框架梁KL5共有4跨,其中一端有懸挑。
D、框架梁KL5共有4跨,其中兩端有懸挑。
40、( A)的作用是把門窗洞口上方的荷載傳遞給兩側的墻體。
A、過梁 B、窗臺 C、圈梁 D、勒腳 三、判斷題? 1、斷面圖是假想用一剖切形體,畫出剖切面切到部分的圖形和末剖切到面可見部分的圖形。(×)2、平面圖定位軸線的豎向編號應用大寫拉丁字母,從下至上順序編寫,其中的I、Q、J不得用作軸線編號。(×)3、總平面圖是畫在有等交線或坐標方格網的地形圖上。(√)4、建筑立面圖是平行于建筑物各方向外表立面的正投影圖。(√)5、常用構件的代號“GL”表示基礎梁。(×)6、結構施工圖中的構造柱的代號是“GJ”。(×)7、鋼筋混凝土結構施工圖中“2Φ16”表示2根HPB235?級鋼筋直徑為16mm(×)8、梁內箍Φ6@200表示為HPB235級鋼筋直徑為6mm,鋼筋中心距為200mm.(√)9、梁內的鋼筋是由主筋(即受力筋),架立筋和箍筋所組成。(√)10、標高是表示建筑物各部分或各個位置相對于±0.00的高度。(√)