這是本科資料庫課程的複習。考試內容主要是資料庫的基本概念,資料庫設計資料庫系統的優化和恢復。至於設計底層的資料庫管理系統原理,坑先挖了,日後補,是我計畫中的一門課程。
目錄資料庫系統:一般由資料庫。資料庫管理系統(及其開發工具)、應用系統、資料庫管理員構成。目的:儲存資訊並支援使用者檢索和更新所需的資訊。
資料模型:是資料庫中用來對現實世界資料特徵的抽象的工具,是資料庫中用於提供資訊表示和操作手段的形式架構。
er圖:概念模型鐘的一種,實體~屬性
**模式結構
關係資料結構:描述實體和實體間的關係。
關係操作:
關係完整性約束:
候選碼:若關係中的某一屬性組的值能唯一地標識乙個元組,則稱該屬性組為候選碼。
主屬性:候選碼的屬性稱為主屬性,不包含在任何侯選碼中的屬性稱為非主屬性。
超碼:關係中能唯一標識元組的屬性集,超碼的任意超集仍是超碼。
主碼:若乙個關係有多個候選碼,則選定期中乙個為主碼。
外碼:設f是基本關係r的乙個或一組屬性。但不是關係r的碼,如果f與基本關係s的主碼k相對應。
集合運算:交,並,差,笛卡爾積。
邏輯運算:非,與,或。
關係運算:選擇,投影
函式依賴:設r(u)是乙個屬性集u上的關係模式,x和y是u的子集, 若對於r(u)的任意乙個可能的關係r,r中不可能存在兩個元組在x上的屬性值相等, 而在y上的屬性值不等, 則稱 「x函式確定y」 或 「y函式依賴於x」,記作x→
\rightarrow
→y。完全函式依賴:x→y
x \rightarrow y
x→y, 任意x的子集x
sx^s
xs, x s↛
yx^s \not \rightarrow y
xs→y
.部分函式依賴:x→y
x \rightarrow y
x→y, 存在x的子集x
sx^s
xs, x s↛
yx^s \not \rightarrow y
xs→y
.傳遞函式依賴:x→y
x \rightarrow y
x→y, y∉x
y \not \in x
y∈
x, y↛x
y \not \rightarrow x
y→
x, y↛z
y \not \rightarrow z
y→
z, z∉y
z \not \in y
z∈
y, 則稱z對x傳遞函式依賴.
候選碼:k完全函式決定該關係的所有其它屬性。k的任何真子集都不能完全函式決定r的所有其它屬性。
外部碼:
1nf:乙個關係模式r的所有屬性都是不可分的基本資料項.
2nf:若r∈
\in∈ 1nf,且每乙個非主屬性完全函式依賴於碼.
3nf:每個非主屬性都不傳遞依賴於r的碼。
bcnf:關係模式r∈
\in∈ 1nf,若x→
\rightarrow
→y且y ↛
\not \rightarrow
→ x時x必含有碼,即每個屬性都不傳遞依賴於r的碼,則r∈
\in∈bcnf
1nf存在插入異常、刪除異常、資料冗餘度大、修改複雜等問題。
將乙個1nf關係分解為多個2nf的關係,並不能完全消除關係模式中的各種異常情況和資料冗餘。
不是bcnf但是3nf:關係模式stj(s,t,j)中,s是學生,t是教師,j是課程。每一教師只教一門課,每門課有若干教師,某一學生選定某課程,就得到乙個固定的教師。
函式依賴:(s,j)決定t;(s,t)決定j;t決定j;
這裡候選碼(s,j),(s,t);
不存在非主屬性對碼的部分或傳遞函式依賴,所以stj屬於第三正規化;
但是j部分函式依賴於碼(t,s),t不是碼,所以stj不屬於bcnf。
資料定義:定義資料庫中的基本物件、模式(架構)定義、表定義、檢視和索引。
索引:建立索引的目的:加快查詢速度。
資料查詢
資料更新 (insert), 修改 (update), 刪除
檢視:虛表,是從乙個或幾個基本表(或檢視)匯出的表;只存放檢視的定義,不存放檢視對應的資料;基表中的資料發生變化,從檢視中查詢出的資料也隨之改變。
步驟
查詢操作的演算法(這方面考試我覺得不會考,但坑先挖下,之後回來補,這方面還是挺感興趣的。)
查詢優化:不僅僅在於不需要考慮如何實現,還在於系統可以比使用者優化的更好。
代數優化(總結一些規律)
物理優化
資料庫的安全性是指保護資料庫以防止非法使用所造成的資料洩漏、更改或破壞。
資料庫安全控制的常用方法和技術。
自主訪問控制方法:定義各個使用者對不同資料物件的訪問許可權。當使用者要訪問資料庫時,首先要檢查其訪問許可權,以防止非法使用者對資料庫進行訪問。
強制訪問控制方法:每乙個資料物件被(強制地)標以一定的加密級別,每位使用者也被(強制地)授予某一級別的許可證。系統規定只有具有某一許可證級別的使用者才能訪問加密級別的資料物件。
自主訪問控制語句:授權與收回語句。grant 語句和 revoke 語句實現。
資料完整性:資料的正確性和相容性。
完整性約束:定義,檢查,違約反映
參照完整性
一旦定義,任何使用者對錶的增刪改,均由伺服器自動啟用觸發器,進行集中的完整性控制;可以進行更為複雜的檢查和操作,具有更精細和更強大的資料控制能力。
事務:事務是使用者所定義的乙個資料庫操作序列,這些操作要麼全做,要麼全不做,是乙個不可分割的工作單位。acid特性。
為了保證事務的原子性、一致性與持續性。dbms必須對事務故障、系統故障和介質故障進行恢復;為了保證事務的隔離性和一致性,dbms需要對併發操作進行控制。
日誌:日誌檔案是用來記錄事務對資料庫所做的更新操作的檔案。
事務故障恢復步驟:
系統故障恢復步驟:
檢查點(checkpoint):顯著改善恢復效率。
併發控制可以保證事務的一致性和隔離性,保證資料庫的一致性。
併發操作可能導致的問題:
鎖 封鎖協議
活鎖和死鎖。
併發排程的可序列性:事務併發是正確的當且僅當結果和序列執行時一致。
衝突可序列化:只要可以通過不衝突操作得到序列排程(衝突操作:不同事務對同乙個資料的讀寫操作和寫寫操作)。
兩段鎖
意向鎖:對節點加意向鎖,表示節點的下層節點正在加鎖。(is,ix,six)
資料庫複習
資料庫複習 2016年6月15日 21 34 main logical data model ldm 邏輯資料模型 1.邏輯資料模型的三要素 data structure 資料結構 data operation 資料操縱 data constraints 資料約束 2.關係模型的歷史 提出關係代數 ...
資料庫複習
連線查詢 一 內連線 內連線查詢操作列出與連線條件匹配的資料行,它使用比較運算子比較被連線列的列值。內連線分三種 1 等值連線 在連線條件中使用等於號 運算子比較被連線列的列值,其查詢結果中列出被連線表中的所有列,包括其中的重複列。2 不等連線 在連線條件使用除等於運算子以外的其它比較運算子比較被連...
資料庫複習總結
模式 模式可以擁有資料庫中的一切物件,如表,索引,檢視,序列,同義詞 不同的模式可以建立相同的物件名 乙個模式只能指定乙個預設的表空間 表 a 表是以資料行為單位儲存於資料塊中的,oracle 會盡量把同一筆資料放入乙個資料塊中。b 資料行 i.行鏈結的產生 當資料行的資料內容超過了乙個資料塊時,內...