資料庫復習題
1、簡述資料庫、資料庫系統、資料庫管理系統三者之間的關系,
答:
①資料庫(DB)是長期儲存在計算機內,有組織的、可共享的大量資料的集合;
②資料庫管理系統(DBMS)是資料庫系統的核心組成部分,它是介于用戶和作業系統之間的一層資料管理軟體,是用戶和資料庫的介面;
③資料庫系統是帶有資料庫的計算機系統,一般由資料庫、資料庫管理系統(DBMS)、相應的硬體、軟體和各類人員(如資料庫管理員DBA)組成,
2、DBMS的主要功能有哪些?
答:
①資料定義:
②資料組織、存盤和管理:
③資料操縱:
④資料庫的事務管理和運行管理:
⑤資料庫的建立和維護:
3、什么叫資料與程式的物理獨立性?什么叫資料與程式的邏輯獨立性?為什么資料庫系統具有資料與程式的獨立性?
答:
①物理獨立性:指用戶的應用程式與資料庫中資料的物理存盤相互獨立,當資料的物理存盤改變時,應用程式可以不變,
②邏輯獨立性:指用戶的應用程式與資料庫的邏輯結構相互獨立,當資料的邏輯結構改變時,用戶程式可以不變,
③有了資料庫,應用程式對資料的訪問通過DBMS進行,程式不能直接操作資料本身,而且DBMS提供了兩層映像機制保證了DBS中資料的邏輯獨立性與物理獨立性,
4、資料模型由哪幾部分組成?各部分的功能如何?
答:
①資料結構:資料庫組成物件與物件之間的聯系,是對系統靜態特性的描述;
②資料操作:資料庫中各種物件的實體允許執行的操作的集合,是對系統特性的描述;
③完整性約束條件:是給定的資料模型中資料及其聯系所具有的制約和依存規則,用于限定符合資料模型的資料庫狀態以及狀態的變化,以保證資料的正確、有效和相容,
5、資料庫系統三級模式結構
答:
①外模式:用戶能夠看得見和使用的區域資料的邏輯結構和特征的描述,是用戶的資料視圖,是與某一應用有關的資料的邏輯表示;
②模式:是資料庫全體資料的邏輯結構和特征的描述,是所有用戶的公共資料視圖,模式描述的是資料的全域邏輯結構;
③內模式:是資料在資料庫系統內部的表示,即對資料的物理結構和存盤方式的描述,
6、專門的關系運算子有哪些?各自完成什么功能?
答:
①選擇:在關系R中選擇滿足給定條件的諸元素;
②投影:在關系R中選擇出若干屬性列組成新的關系;
③連接:從兩個關系的笛卡爾積中選取屬性間滿足一定條件的元組;
④除運算:設關系R除于關系S的結果為關系T,則T包含所在R中但不在S中的屬性及值,且T的元組和S的元組的所有組合都在R中,
7、SQL語言有幾種使用方式,各自在什么情況下使用?
答:兩種
①互動式:在終端互動下使用;
②嵌入式:能嵌入到高級語言中,供程式員設計程式,
8、什么是視圖?它有什么優點?
答:
①視圖是從一個或幾個基本表中匯出的表,它像一個視窗,透過它可以看到資料庫中自己感興趣的資料及其變化;
②優點:
簡化用戶的操作;
可以令用戶從多角度看待同一資料;
對重構資料庫提供一定程度的邏輯獨立性;
對機密資料提供安全保護;
適當利用視圖可以更加清晰地表達查詢,
9、試述規范化的概念和1NF、2NF、3NF、BCNF之間有何關系?
答:
①規范化:一個低一級的范式的關系模式通過模式分解可以轉換為若干個高一級范式的關系模式的集合,這個程序就叫做規范化;
②關系:BCNF屬于3NF屬于2NF屬于1NF
10、1NF→2NF→3NF→BCNF→4NF的轉化程序分別做了那些作業?
答:
①1NF→2NF:消除非主屬性對碼的部分函式依賴;
②2NF→3NF:消除非主屬性對碼的傳遞函式依賴;
③3NF→BCNF:消除非主屬性對碼的部分函式和傳遞函式依賴;
④BCNF→4NF:消除非平凡且非函式依賴的多值依賴,
11、試述資料庫設計的基本步驟,完成每個步驟的方法、任務和要求?
答:
①需求分析階段:需求收集和分析,得到資料字典和資料流圖;
②概念結構設計階段:對用戶需求綜合、歸納和抽象,形成概念模型,用E-R圖表示;
③邏輯結構設計階段:將概念結構轉換為某個DBMS所支持的資料模型;
④物理結構設計階段:為邏輯資料模型選取一個最適合應用環境的物理結構;
⑤資料庫實施階段:建立資料庫,編制和除錯應用程式,組織資料入庫,程式試運行;
⑥資料庫運行和維護階段:對資料庫系統進行評價、調整和修改,
12、什么是事務?事務的提交和回滾是何含義?
答:
①事務是用戶定義的一個資料庫操作序列,這些操作要么全做,要么全不做,是一個不可分割的作業單位,
②
事物的提交:COMMIT表示提交,即在提交事務的所有操作,具體地說就是將事務中所有對資料庫的更新寫回到磁盤上的物理資料庫中去,事務正常結束;
事務的回滾:ROLLBACK表示回滾,即在事務運行的程序中發生了某種故障,事務不能繼續執行,系統將事務中對資料庫的所有已完成的操作全部撤銷,或回滾到事務開始時的狀態
13、在DBMS中為什么要加入資料庫恢復功能?
答:
盡管在DBS中采取各種措施防止資料庫的安全性和完整性被破壞,保證事務的正確執行,但是計算機系統中硬體故障、軟體錯誤,操作員的事務或惡意的破壞是不可避免的,這些故障可能會造成事務非正常中斷,影響資料庫中資料的正確性,破壞資料庫,是資料庫中全部或部分資料丟失 ,所以必須具有資料庫恢復功能,
14、在登記日志檔案時為什么先寫日志檔案后寫資料庫?
答:
①若先寫資料庫,在日志檔案中沒有登記這個修改,則以后就無法恢復這個修改;
②若先寫日志,沒有修改資料庫,按日志檔案恢復時只多執行一次不必要的UNDO操作,并不會影響資料庫的正確性,
15、為什么要引入具有檢查點的恢復技術?
答:
①搜索整個日志檔案要耗費大量時間;
②重做處理、重新執行耗費大量時間,
引入具有檢查點的恢復技術是為了改善恢復效率,
16、設有兩個事務T1和T2,它們的并發操作如下圖,對這個并發操作給出評價:
T1 _____ T2
①讀X=48
② 讀X=48
③X=X+10寫回X
④ X=X-2寫回X
答:
事務T1,T2讀入同一資料X=48并對其進行了修改,但是T2提交的結果破壞了T1提交的結果,導致T1的修改被丟失,這種情況稱為丟失修改,會導致資料庫的不一致性,
為了防止這種情況的發生,應該用封鎖技術對并發操作加以控制,
17、在資料庫中為什么要有并發控制?
答:
當多個用戶并發的存取資料庫時就會產生多個事務同時存取同一資料的情況,若對并發操作不加控制就可能會存取和存盤錯誤的資料,破壞事務的一致性和資料庫的一致性,所以必須要有并發控制機制,
18、怎樣進行系統故障的恢復?
答:
①正向掃描日志檔案,找出在故障發生前已經提交的事務佇列和未完成的事務佇列;
②對撤銷佇列中的各個事務進行撤銷處理;
③對重做佇列中的事務進行重做處理;
19、試述活鎖的產生原因和解決辦法,
答:
①原因:當一系列封鎖不能按照先后順序執行時,就可能導致一些事務無限期等待某個封鎖,從而導致活鎖;
②解決方法:采用先來先服務的策略,當多個事務請求封鎖同一資料物件時,封鎖子系統按請求封鎖的先后次序對事務排隊,資料物件上的鎖一旦釋放就批準申請佇列中的第一個事務獲得鎖,
20、解釋資料庫完整性是何含義?
答:
資料庫的完整性指資料的正確性和相容性,
資料的完整性是為了防止資料庫中存在不符合語意的資料,也就是防止資料庫中存在不正確的資料,
21、解釋資料庫安全性是何含義?它與資料庫完整性有何區別?
答:
資料庫的安全性指保護資料庫防止不合法的使用所造成的的資料泄露、更改或破壞,
區別:
完整性是為了防止資料庫中存在不符合語意的資料;
安全性是為了防止惡意的破壞和非法的存取,
22、試述資料庫安全性控制的方法
答:
①用戶標識和鑒別
②存取控制
③視圖機制
④審計
⑤資料加密
23、資料庫中死鎖產生的原因和解決死鎖的辦法,
答:
原因:兩個或者多個事務都已封鎖了一些資料物件,然后又都請求已為其它事務封鎖的資料物件加鎖,從而出現死等,
解決辦法:
①預防死鎖
②死鎖診斷和解除
24、試述日志檔案的作用,
答:
進行事務故障的恢復
進行系統故障的恢復
協助后備副本進行介質故障恢復
25、為什么在DBMS中需要提供資料重組織的功能?
答:
資料庫運行一段時間后,由于記錄不斷增、刪、改,會使得資料庫的物理存盤情況變壞,降低了資料的存取效率,資料庫性能下降,這就需要對資料庫進行重組織,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/229285.html
標籤:其他
上一篇:spring的事務處理
下一篇:sql的一些命令及函式
