《資料庫系統概論》複習筆記

來源:互聯網
上載者:User

資料庫是長期儲存之電腦內的、有組織的、可共用的大量資料的集合。
1,資料庫資料特點 P4     永久儲存,有組織,可共用
2,資料獨立性及其如何保證  P10,P34

邏輯獨立性:使用者的應用程式與資料庫的邏輯結構互相獨立。( 內模式保證) 物理獨立性:使用者的應用程式與儲存在磁碟上的資料庫中的資料相互( 外模式保證)
3,資料模型的組成要素 P13      資料結構、資料操作、完整性條件約束
4,用ER圖來表示概念性模型 P17
      實體、聯絡和屬性。聯絡本身也是一種實體型,也可以有屬性。第二章      單一的資料結構---- 關係。現實世界的實體以及實體間的各種聯絡均用關係來表示。       是一組具有相同資料類型的值的集合。
候選碼關係模式的所有屬性群組是這個關係模式的候選碼,稱為 全碼若一個關係有多個候選碼,則選定其中一個為 主碼候選碼的諸屬性稱為 主屬性不包含在任何侯選碼中的屬性稱為 非主屬性

1,SQL的特點P79-P80
1. 綜合統一 2. 高度非過程化  3. 面向集合的操作方式 4.以同一種文法結構提供多種使用方式 5. 語言簡潔,易學易用
2,基本表的定義、刪除和修改P84-P87
PRIMARY KEY PRIMARY KEY (Sno,Cno) UNIQUE FOREIGN KEY (Cpno)  REFERENCES  Course(Cno)
ALTER TABLE <表名>[  ADD <新列名> <資料類型> [ 完整性條件約束 ] ][  DROP <完整性條件約束名> ][  ALTER COLUMN<列名> <資料類型> ];
DROP TABLE <表名>[ RESTRICT| CASCADE];
3,索引的建立與刪除P89-P90      CREATE [UNIQUE] [CLUSTER] INDEX <索引名>      ON <表名>(<列名>[<次序>][,<列名>[<次序>] ]…);     唯一索引  UNIQUE、非唯一索引或聚簇索引 CLUSTER      DROP INDEX <索引名>;
4,資料查詢P91-P114     唯一  DISTINCT
BETWEEN AND,NOT BETWEEN AND確定集合  IN,NOT IN字元匹配  LIKE,NOT LIKE空值   IS NULL,IS NOT NULL多重條件(邏輯運算)  AND,OR,NOT                                                                                                                                                                                                                                                                                 
ORDER BY子句 升序: ASC;降序: DESC預設值為升序
聚集合函式:
COUNT
([DISTINCT|ALL] *)
COUNT
([DISTINCT|ALL] <列名>)
SUM
([DISTINCT|ALL] <列名>)
AVG
([DISTINCT|ALL] <列名>)
MAX
([DISTINCT|ALL] <列名>)
MIN
([DISTINCT|ALL] <列名>)
GROUP BY子句分組 && HAVING短語
LEFT OUT JOIN XXX ON 
5,資料更新P115-P118
INSERT INTO <表名> [(<屬性列1>[,<屬性列2 >…)] VALUES (<常量1> [,<常量2>]    …           )/或子查詢
UPDATE  <表名> SET  <列名>=<運算式>[,<列名>=<運算式>]… [ WHERE <條件>];
  DELETE   FROM     <表名> [ WHERE <條件>];

6,視圖的P118-126        CREATE  VIEW              <視圖名>  [(<列名>  [,<列名>]…)]        AS  <子查詢>   --子查詢不允許含有ORDER BY子句和DISTINCT短語       [ WITH  CHECK  OPTION];
      DROP  VIEW  <視圖名>;第四章、第五章1,授權與回收P137-P140
GRANT語句的一般格式:       GRANT <許可權>[,<許可權>]...    -- ALL PRIVILIGES        [ON <物件類型> <對象名>]       TO <使用者>[,<使用者>]...  --PUBLIC       [WITH GRANT OPTION];   --允許他再將此許可權授予其他使用者 REVOKE語句的一般格式為:      REVOKE <許可權>[,<許可權>]...       [ON <物件類型> <對象名>]      FROM <使用者>[,<使用者>]...;    --級聯(CASCADE)收回
   角色是許可權的集合
角色的建立CREATE  ROLE  <角色名稱> 
二、 給角色授權  GRANT  <許可權>[,<許可權>]…  ON <物件類型>對象名   TO <角色>[,<角色>]…
三、 將一個角色授予其他的角色或使用者GRANT  <角色1>[,<角色2>]…TO  <角色3>[,<使用者1>]… [WITH ADMIN OPTION] 
四、 角色許可權的收回 REVOKE <許可權>[,<許可權>]…ON <物件類型> <對象名>FROM <角色>[,<角色>]…

實體完整性
 CREATE  TABLE中用PRIMARY KEY定義
參照完整性 在CREATE  TABLE中用FOREIGN KEY短語定義哪些列為外碼 用REFERENCES短語指明這些外碼參照哪些表的主碼
使用者定義的完整性 CREATE TABLE時定義 列值非空(NOT NULL) 列值唯一(UNIQUE) 檢查列值是否滿足一個布林運算式(CHECK)
CONSTRAINT 約束CONSTRAINT <完整性條件約束條件名>[PRIMARY KEY短語   |FOREIGN KEY短語   |CHECK短語]
使用ALTER TABLE語句修改表中的完整性限制 可以先刪除原來的約束條件,再增加新的約束條件      ALTER TABLE Student      DROP CONSTRAINT C1;      ALTER TABLE Student      ADD CONSTRAINT C1 CHECK (Sno BETWEEN 900000 AND 999999)
第六章
1,函數依賴和碼的定義P172-P174
函數依賴:一個屬性或一組屬性的值可以決定其它屬性的值。
函數依賴: 平凡函數依賴與非平凡函數依賴在關係模式R(U)中,對於U的子集X和Y, 如果X→Y,但Y 不屬於 X,則稱X→Y是非平凡的函數依賴 若X→Y,但Y 屬於 X,   則稱X→Y是平凡的函數依賴
,記作:X
部分函數依賴,記作X傳遞函數依賴直接函數依賴而不是傳遞函數依賴。
     如果一個關係模式R的所有屬性都是 不可分的基本資料項目,則R∈ 1NF     第一範式是對關係模式的最起碼的要求     若R∈1NF,且每一個 非主屬性完全函數依賴於碼,則R∈ 2NF。     每一個非主屬性既不部分依賴於碼也 不傳遞依賴於碼,則R∈ 3NF
3,函數依賴公理系統(Armstrong公理系統P183,閉包P184,最小覆蓋P186)
自反律(Reflexivity):若Y屬於XU,則X →Y為F所蘊含。屬於     A2. 增廣律(Augmentation):若X→Y為F所蘊含,且Z屬於U,則XZ→YZ為F所蘊含。     A3. 傳遞律(Transitivity):若X→Y及Y→Z為F所蘊含,則X→Z為F所蘊含。(匯出規則): 合并規則:由X→Y,X→Z,有X→YZ。       (A2, A3) 偽路由規則:由X→Y,WY→Z,有XW→Z。       (A2, A3) 分解規則:由X→Y及 Z屬於Y,有X→Z。       (A1, A3)
在關係模式R<U,F>中為F所邏輯蘊含的函數依賴的全體叫作 F的 閉包,記為F+。設F為屬性集U上的一組函數依賴,X 屬於U, XF+ ={ A|X→A能由F 根據Armstrong公理匯出},XF+稱為屬性集X關於函數依賴集F 的閉包
F+ = G+ 的充分必要條件是F 屬於 G+ ,和G 屬於 F+  最小依賴集    (1) F中任一函數依賴的右部僅含有一個屬性。    (2) F中不存在這樣的函數依賴X→A,使得F與F-{X→A}等價。    (3) F中不存在這樣的函數依賴X→A, X有真子集Z使得F-{X→A}∪{Z→A}與F等價。 
4,模式分解(模式分解的準則及定義P189-P190,模式分解方法P191)     模式的分解要保持 無損聯結性和函數依賴性。演算法見教材...第七章1,資料庫設計的基本步驟P201
需求分析  概念結構設計  邏輯結構設計  物理結構設計  資料庫實施  資料庫運行和維護 
2,概念結構設計的方法和步驟P209-P211
自頂向下 首先定義全域概念結構的架構,然後逐步細化  自底向上 首先定義各局部應用的概念結構,然後將它們整合起來,得到全域概念結構  逐步擴張 首先定義最重要的核心概念結構,然後向外擴充,以滾雪球的方式逐步產生其他概念結構,直至總體概念結構  混合策略 將自頂向下和自底向上相結合,用自頂向下策略設計一個全域概念結構的架構,以它為骨架整合由自底向上策略中設計的各局部概念結構。

3,E-R圖向關聯式模式的轉換P224-P225     屬性不能再具有需要描述的性質。屬性不能與其他實體具有聯絡。這種 轉換一般遵循如下原則
4,實體設計(關係模式存取方法的選擇P228-P230,資料庫的存取結構P230-P231)常用存取方法
索引方法 B+樹索引方法     查詢條件,聚集合函式,串連操作2、 聚簇(Cluster)方法     串連操作,相等比較,重複率高3、 HASH方法     大小可預知,DBMS提供動態存取方法
確定資料庫的物理結構
確定資料的存放位置( 存取時間 儲存空間利用率 維護代價)⒋  確定系統配置
第十一章事務(Transaction)是使用者定義的一個資料庫操作序列,這些操作要麼全做,要麼全不做,是一個不可分割的工作單位;事務是恢複和並發控制的基本單位;
1,事務的特性P279     事務的 ACID特性: 原子性(Atomicity)一致性(Consistency)隔離性(Isolation)持久性(Durability )
2,並發控制不當導致的問題P294     1) 丟失修改(Lost Update)     2) 讀“髒資料” (dirty read)     3) 不可重複讀取(Non-repeatable Read)
3,封鎖P295-296
申請加鎖;     第二個環節是 獲得鎖;     第三個環節是 釋放鎖。基本的封鎖類型有兩種: 排它鎖(Exclusive Locks,簡稱 X鎖)和 共用鎖定(Share Locks,簡稱 S鎖)。
解決活鎖問題的方法是採用先來先服務。 解決死結方法:(1)預防死結的發生;(2)允許發生死結,然後採用一定手段定期診斷系統中有無死結,若有則解除之。預防死結的方法: 一次封鎖法, 順序封鎖法死結的診斷:逾時法,事務等待圖法

4,並發調度的可串列性P299-P230      定義:多個事務的並發執行是正確的,若且唯若其結果與按某一次序串列地執行這些事務時的結果相同。
      衝突操作是指不同的事務對同一個資料的讀寫操作和寫寫操作。      不同事務的衝突操作不能交換。      同一事務的兩個操作不能交換。     衝突可序列化調度是可序列化調度的充分條件,不是必要條件。
5,兩段鎖協議P301-P302     兩段鎖協議:指所有事務必須 分兩個階段對資料項目加鎖和解鎖。      第一階段是 獲得封鎖,也稱為擴充階。 第二階段是 釋放封鎖,也稱為收縮階段。
事務遵守兩段鎖協議是可序列化調度的充分條件,而不是必要條件。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.