文章目錄
- 資料庫基本概念(四個)
-
- 資料庫系統(DBS)
-
- DBS的組成
- DBS的特點
- 資料庫管理系統(DBMS)
-
- DBMS的組成
- DBMS的功能
- 資料庫系統的
-
- 内部體系結構
- 外部體系結構
- 資料庫模式
-
- 資料庫的三級系統結構
- 資料庫的二級映像
- 概念模型
- 常見的資料模型(三種)
-
- 關系模型相關概念
- 關系模型的完整性限制
- 關系代數
- 資料庫其它知識點
-
- 索引
- 視圖
- 事務
資料庫基本概念(四個)
資料(Data):描述事物的符号記錄。
資料庫(DataBase,DB):是長期存儲在計算機内的、有組織的、可共享的、統一管理的相關資料的集合。
資料庫管理系統(DataBase Management System,DBMS):用于建立和管理資料庫的一套軟體,介于應用程式和作業系統之間。
資料庫系統(DataBase System,DBS):有資料庫、資料庫管理系統(及其應用開發工具)、應用程式和資料庫管理者組成的存儲、管理、處理和維護資料的系統。
資料庫系統(DBS)
DBS的組成
- 資料:資料是資料庫系統的工作對象,它們是某特定應用環境中進行管理和決策所必需的資訊。
- 使用者:使用者是指存儲、維護和檢索資料庫中資料的人員。資料庫系統中主要有3類使用者:終端使用者、應用程式員和資料庫管理者。
- 硬體:硬體是指存儲資料庫和運作資料庫管理系統DBMS的硬體資源。
- 軟體:軟體是指負責資料庫存取、維護和管理的軟體系統,通常叫做資料庫管理系統(DBMS)。
DBS的特點
- 資料結構化: 即資料本身結構化,資料與資料之間的關系也是結構化的。這大大友善了資料的存儲、管理、處理和維護,并提供統一的對外接口,友善使用和遷移。
- 資料低備援、共享性高:整體結構化的資料面對的不再是單一應用或單個使用者,而是面向整個系統,可以被多個應用共享使用 。在系統内隻有一個正本,不會産生多個副本資料不一緻的情況減少資料備援。
- 資料獨立性提高: 實體獨立性——應用程式和資料庫中資料的實體存儲是互相獨立的。邏輯獨立性——應用程式和資料庫的邏輯結構是互相獨立的。
- 有統一的資料管理和控制功能: 資料的安全性保護;資料的完整性檢查;并發控制;資料庫恢複。
資料庫管理系統(DBMS)
DBMS的組成
- 語言編譯處理程式
- 系統運作控制程式
- 系統建立、維護程式
- 資料字典
DBMS的功能
- 資料庫定義功能
- 資料存取功能
- 資料庫運作管理功能
- 資料庫的建立和維護功能
- 資料通信功能
資料庫系統的
内部體系結構
内部體系結構是三級模式結構,分别為:模式、外模式和内模式
外部體系結構
外部體系結構主要有:集中式結構、檔案伺服器結構和客戶/伺服器結構
資料庫模式
是對資料庫中全體資料的邏輯結構(資料項的名字、類型、取值範圍等)和特征(資料之間的聯系以及資料有關的安全性、完整性要求)的描述。
資料庫的三級系統結構
- 外模式:又稱為子模式或使用者模式,是對特定資料庫使用者相關的局部資料的邏輯結構和特征的描述。是資料庫使用者的資料視圖,通常是模式的子集。一個資料庫可有多個外模式。
- 内模式:又稱為存儲模式,是對資料庫實體結構和存儲方式的描述,是資料在資料庫内部的表示方式。一個資料庫隻有一個内模式。
- 模式:是對資料庫中全體資料的邏輯結構和特征的描述。
資料庫的二級映像
① 外模式/模式映像、② 模式/内模式映像
資料庫三級模式通過二級映象在 DBMS 内部實作這三個抽象層次的聯系和轉換。外模式面向應用程式, 通過外模式/模式映象與邏輯模式建立聯系, 實作資料的邏輯獨立性。 模式/内模式映象建立模式與内模式之間的一對一映射, 實作資料的實體獨立性。
概念模型
也稱資訊模型,是按使用者的觀點來對資料和資訊模組化,主要用于資料庫設計
- 實體與實體集:實體是現實世界中可差別于其他對象的事物或物體;實體集是具有相同類型及共享相同性質(屬性)的實體集合。
- 屬性:實體通過一組屬性來表示;屬性是實體集中每個成員具有的描述性性質。
- 關鍵字和域:實體的某一屬性或屬性組合,其值能惟一辨別出某一實體,稱為關鍵字,也稱碼;每個屬性都有一個可取值的集合,稱為該屬性的域,或者該屬性的值集;
- 聯系:兩個實體之間的聯系又可分為一對一聯系(1:1)、一對多聯系(1:n)和多對多的聯系(m:n)。
常見的資料模型(三種)
- 層次模型:是用 樹狀<層次>結構 來組織資料的資料模型。層次結構模型具有如下特征:① 有且隻有一個結點沒有雙親結點,這個結點稱為根結點 ② 根以外的其它結點有且隻有一個雙親結點
- 網狀模型:是用 有向圖(由有向樹演變而來)表示實體和實體之間的聯系的資料結構模型稱為網狀資料模型。網狀模型具有如下特征:① 允許一個以上的結點沒有雙親 ② 至少有一個結點可以有多于一個雙親
- 關系模型:是用 二維表格結構 來表示實體及實體之間聯系的資料模型,關系模型的資料結構是一個“二維表架構”組成的集合。關系模型具有以下特征:① 無論是是實體、還是實體之間的聯系都是被映射成統一的關系 ② 操作的對象和結果都是一張二維表,它由行和列組成
關系模型是使用最廣泛的資料模型,目前大多數資料庫管理系統都是關系型的,如MySQL、Sql server、Oracle都是關系資料庫管理系統。
關系模型相關概念
- 關系:一個關系對應通常說的一張表
- 元組:表中的一行即為一個元組
- 屬性:表中的一列即為一個屬性,給每一個屬性起一個名稱即屬性名
- 域:是一組具有相同資料類型的值的集合。即屬性的取值範圍
- 分量:元組中的一個屬性值。
- 候選關鍵字:也稱候選碼,關系中的一個或幾個屬性的集合,該屬性集唯一辨別一個元組
- 主關鍵字(主鍵):一個關系中有多個候選關鍵字,可以選擇其中一個作為主關鍵字
- 外部關鍵字(外鍵):如果一個屬性組不是所在關系的關鍵字,但它是其他關系的關鍵字,則該屬性組稱為外部關鍵字
- 主屬性:包含在任一候選關鍵字中的屬性稱為主屬性
- 關系模式:對關系的描述,關系名(屬性1,屬性2,…,屬性n)
關系模型的完整性限制
- 實體完整性:是通過主鍵來實作。主鍵不能為空且值必須唯一
- 參照完整性:是通過主外鍵關聯來實作
- 域完整性:是通過列的取值範圍實作
- 使用者自定義完整性:使用者根據具體需求定義的完整性限制條件來實作
關系代數
傳統的集合運算是二目運算,包括并、差、交、笛卡爾積4種運算。
- 關系R和關系S的并運算
- 關系R和關系S的差運算
- 關系R和關系S的交運算
- 關系R和關系S的笛卡爾積:兩個分别具有n和m個屬性的關系R和S的笛卡爾積是一個(n+m)列的元組的集合。元組的前n列是關系R的一個元組,後m列是關系S的一個元組。若R有k1個元組,S有k2個元組,則關系R和關系S的笛卡爾積有k1k2元組。
專門的關系運算包括選擇、投影、連接配接、除運算等。
- 選擇:從一個關系中選出滿足給定條件的記錄的操作稱為選擇或篩選。選擇是從行的角度進行的運算
- 投影:從一個關系中選出若幹指定字段的值。投影是從列的角度進行的運算,所得到的字段個數通常比原關系少,或者字段的排列順序不同
- 連接配接:把兩個關系中的記錄按一定條件橫向結合,生成一個新的關系
- 除:元組在X上分量值x的象集Yx包含S在Y上投影的集合
資料庫其它知識點
索引
索引: 是關系型資料庫中給資料庫表中一列或多列的值排序後的存儲結構,主要使用了B+tree和Hash結構
建立索引的目的:提高查詢的效率
工作原理: 在MySQL中,存儲引擎用類似的方法使用索引,其先在索引中查找對應的值,然後根據匹 配的索引記錄找到對應的資料行,最後将資料結果集傳回給用戶端
類别:
- 普通索引:提高查詢效率針對表中的某列建立的索引
- 主鍵索引:在建立表格并指定主鍵時會自動建立,為了提高查詢效率
- 唯一索引:建立索引的字段(列)取值是唯一的
- 外鍵索引:查詢時會自動進行主外鍵的關聯查詢.外鍵的作用是保證資料的一緻性和完整性
- 全文索引:主要用于文章的搜尋,在搜尋引擎中使用較多
唯一索引和主鍵索引的差別:(重點)
- ①二者本質不同:主鍵是限制,唯一索引是索引
- ②主鍵建立後一定包含一個唯一索引,但是唯一索引不一定是主鍵
- ③唯一索引允許空值,主鍵不允許有空值
- ④一個表最多一個主鍵,但可以有多個唯一索引
- ⑤主鍵可被其他表引用為外鍵,唯一索引不能
視圖
視圖: 是一張虛拟的表,資料來自于查詢語句所涉及的表。使用時和真實的表相同,但是視圖不會在資料庫中進行存儲。
作用: 針對複雜的多表查詢,為了簡化SQL語句的編寫,可以先建立視圖,然後用簡單的查詢語句去查詢視圖,就可以提高查詢效率。
事務
事務: 在資料庫中事務是工作的邏輯單元,一個事務是由一個或多個完成一組的相關行為的SQL語句組成,通過事務機制確定這一組SQL語句所作的操作要麼完全成功執行,完成整個工作單元操作,要麼一點也不執行。
作用: 確定資料庫的完整性
事務的特性(ACID):
- (1) 原子性(Atomicity):事務中包括的所有操作要麼都做,要麼都不做
- (2) 一緻性(Consistency):事務必須使資料庫從一個一緻性狀态變到另一個一緻性狀态
- (3) 隔離性(Isolation):一個事務内部的操作及使用的資料對并發的其他事務時隔離的
- (4) 持久性(Durability) :事務一旦送出,對資料庫的改變時永久的
持續更新。。。。。。。