1.DB、DBS、DBMS的定義及三者之間的關系。
? 數據庫(db)是在計算機中長期儲存,有結構,可共享的,大量的數據的集合.
? ?數據庫管理系統(dbms)是位于用戶與操作系統間的一層數據管理軟件.
? 數據庫系統(dbs)是由數據庫\數據庫管理系統\應用程序\數據庫管理員組成的存儲\管理\處理\維護數據的系統.
? 數據庫系統包括數據庫\數據庫管理系統.數據庫管理系統可對數據庫進行管理,如查詢\更新操作等.
2.數據庫系統的構成要素包括哪些?
? 數據庫系統包括數據庫\數據庫管理系統\應用程序\數據庫管理員.
3.數據庫系統的三級模式結構、二級映象功能與數據獨立性
? (1)數據庫的三級模式結構包括:外模式\模式\內模式
? 模式也稱邏輯模式,是數據庫中全體數據的邏輯結構和特征的描述(唯一).
? 外模式也稱為用戶模式\子模式,是數據庫用戶能夠看見和使用的局部數據的邏輯結構和特征(安全性),是數據庫用戶的數據視圖(多個).
? 內模式也成為儲存模式,是數據物理結構和儲存方式的描述.(唯一)
? (2)二級映像功能:外模式\模式映像,模式\內模式映像
? 外模式\模式映像:實際就儲存在外模式的描述中.由于程序是由依據外模式編寫的,當模式改變時只需改變外模式描述即可保持相同效果,所以保 ? ? ?證了數據的邏輯獨立性.
? 模式\內模式映像:存儲結構改變時,只需要對內模式進行修改即可保持模式和應用程序不變,所以保證了數據的物理獨立性.
4.數據管理技術經歷了哪三個階段?
? 人工管理階段\文件系統階段\數據庫系統階段
5.常見的數據模型有哪些?
? 層次模型(唯一父節點)\網狀模型(父節點可多個)\關系模型\面向對象數據模型\對象關系數據模型\半結構化數據模型
6.SQL語言有哪些功能和優點?
? 功能:數據定義\查詢\操縱\控制
? 特點:(1)綜合統一:功能完整,語言風格統一
? (2)高度非過程化:只需表明做什么
? (3)面向集合的操作方式
? (4)同一種語法結構,多種使用方式
? (5)簡潔易用
7.專門的關系運算有哪些?
? 專門的關系運算包括:選擇\連接\投影\除運算
? (1)選擇:行,select.σ,挑出符合特定條件的值
? (2)連接:從兩個關系的笛卡爾積中選取屬性間滿足一定條件的元組.
? 等值連接:兩表連接后屬性值相等的行保留下來.
? 自然連接:等值連接后,將相同屬性名的列合并.
? 被舍棄的叫懸浮元組.將懸浮元組也添加到自然連接上則為外連接.
? 保留左邊表的懸浮元組則為左外連接,同理有右外連接.
? (3)投影:列,π,從關系上挑出某些屬性
? (4)除運算:R÷S.R中的某一行的某個屬性所對應的其他屬性要在S中全都有相應的對應.
8.數據庫的完整性概念,各種完整性的定義。
? 完整性:對關系的某種約束條件.包括實體完整性\參照完整性\用戶定義的完整性.
? (1)實體完整性:主屬性不可為空(為空表示實體不可標識)
? (2)參照完整性:外碼
? (3)用戶定義的完整性:特殊條件
9.什么是索引,索引有什么作用?
? 索引由屬性值和相應元組指針組成.屬于內模式.
? 作用:加快查詢速度
10.視圖與表有什么區別?
? 視圖是從一個或幾個基本表(視圖)中導出的表,是虛表,其中只存放了視圖的定義(查詢規則).而表是真實存在的表.
11.范式的定義以及各范式之間的關系
? 范式是符合某一種級別要求的關系模式的集合.
? 規范化:低級范式通過模式分解變成高級范式
? 1NF:每一個數據項都是不可分割的最小數據項
? 2NF:非主屬性完全函數依賴于任何一個候選碼.如不是,則有插入異常,刪除異常,修改復雜.(1nf函數依賴于碼)
? 3NF:非主屬性不傳遞依賴于碼,且不部分依賴于碼(2nf消除依賴傳遞)
? BCNF:非主屬性只能完全函數依賴于所有碼(碼為唯一決定因素)
12.如何判斷一個關系屬于第幾范式?
? 從低級到高級逐步判斷
13.如何把一個不滿足BCNF的關系分解為BCNF?
? 模式分解直到碼為唯一直接決定因素
14.實體聯系轉換成關系模式的方法。
? 思路和將er圖轉化為邏輯模型一樣
15.局部E-R圖合并成全局E-R圖時可能出現沖突有哪些?
? 屬性沖突:屬性域\單位計量
? 命名沖突:同名異意,異意同名
? 結構沖突:不同抽象,不同聯系,不同型
16.數據庫設計包括哪幾個階段,各階段主要任務是什么?
? (1)需求分析
? (2)概念模型
? (3)邏輯模型
? (4)物理模型
? (5)實施
? (6)運行維護
17.數據庫設計概括為三個主要階段,是哪三個階段?
? 概念結構、邏輯結構和物理結構三個階段
18.事務的概念和特點,事務與程序的區別是什么?
? 事務是用戶定義的一個數據庫操作序列,要么全做要么全不做,不可分割.
? 事務具有:原子性,一致性(數據庫狀態),隔離性,持續性(數據庫).
19.什么是觸發器?
? 又叫做事件條件動作規則.當某事件發生時,根據條件判斷是否發生動作.
20.數據庫恢復有哪些技術?
? 思路為建立冗余數據庫.
? 實現:數據轉儲(定期備份),登記日志文件
? 數據轉儲:靜態轉儲(空閑時)\動態轉儲(與事務并發進行)
? 登記日志文件(所有事務有關信息)
21.什么是兩段鎖協議?
? 所有事務分兩個階段對事務進行加鎖和解鎖.
? 擴展階段:只能加鎖,不能解鎖
? 收縮階段:釋放封鎖
22.什么是并行調度的可串行化?
? 多個事務并發執行是正確的,當且僅當此結果和某種串行執行的結果一致即可.
? 沖突可串行化是其充分條件.
23.并發操作會帶來哪些問題,如何避免?
? 丟失修改,不可重復讀,讀臟數據.
? 通過三級封鎖協議.
24.并發控制機制有哪些基本類型的鎖?
? 排他鎖(寫鎖,X鎖)
? 共享鎖(讀鎖,S鎖)
25.數據加鎖有什么限定?
? 排他鎖上不可加其他鎖
? 共享鎖上可以加其他共享鎖
26.封鎖協議有哪些?
? 一級封鎖協議:事務修改數據前要加X鎖,事務結束后釋放.
? 二級封鎖協議:一級之上,在讀操作時要加S鎖,讀完解鎖.
? 三級封鎖協議:一級之上,在讀操作時要加S鎖,事務結束后釋放.(在一級依然成立的基礎上,強化S鎖)
27.數據庫系統常見故障及解決辦法有哪些?
? (1)事務內部的故障(非預期):進行事務撤銷
? (2)系統故障(系統停止運轉):撤銷未完成事務并重做已完成事務
? (3)介質故障(破壞性最大)
? (4)計算機病毒
28.實現數據庫系統安全性的技術和方法
? 用戶身份鑒別:口令\生物特征\卡
? 存取控制:定義權限\權限管理(自主存取控制_可轉授權限,強制存取控制_表明等級,嚴格執行)
? 審計:審計日志監控數據庫行為
? 視圖:可隱藏關鍵信息
? 數據加密:明文__密文
29.什么是自然連接、等值連接、左連接、右連接?
自然連接:相同屬性值的列保留并組成笛卡 ?爾積
? 等值連接:自然連接基礎上合并相同列名
? 左連接:自然連接保留左表的懸浮元組
? 右連接:自然連接保留右表的懸浮元組
30.死鎖的解決方式?
? 超時法,等待圖法.