資料庫基礎

2021-07-06 11:32:58 字數 2554 閱讀 2921

(1)資料模型三要素
資料模型(data model)是現實世界資料特徵的抽象,或者說是現實世界的資料模擬。資料庫中,用資料模型來抽象地表示現實世界的資料和資訊。
資料模型是資料庫中資料的儲存方式,是

資料庫系統

的基礎。在資料庫中,資料的物理結構又稱資料的儲存結構,就是資料元素在

計算機儲存器中的表示及其配置;資料的邏輯結構則是指資料元素之間的邏輯關係,它是資料在使用者或程式設計師面前的表現形式,資料的儲存結構不一定與邏輯結構一致。

資料模型的三要素是:資料結構、資料操作及完整性約束條件。

(1)資料結構 

資料結構用於描述系統的靜態特徵,包括資料的型別、內容、性質及資料之間的聯絡等。它是資料模型的基礎,也是刻畫乙個資料模型性質最重要的方面。在資料庫系統中,人們通常按照其資料結構的型別來命名資料模型。例如,層次模型和關係模型的資料結構就分別是層次結構和關係結構。

(2)資料操作

資料操作用於描述系統的動態特徵,包括資料的插入、修改、刪除和查詢等。資料模型必須定義這些操作的確切含義、操作符號、操作規則及實現操作的語言。

(3)資料約束

資料的約束條件實際上是一組完整性規則的集合。完整性規則是指給定資料模型中的資料及其聯絡所具有的制約和儲存規則,用以限定符合資料模型的資料庫及其狀態的變化,以保證資料的正確性、有效性和相容性。例如,限制乙個表中學號不能重複,或者年齡的取值不能為負,都屬於完整性規則。

資料庫的型別是根據資料模型來劃分的,而任何乙個dbms也是根據資料模型有針對性地設計出來的,這就意味著必須把資料庫組織成符合dbms規定的資料模型。目前成熟地應用在資料庫系統中的資料模型有:層次模型、網狀模型和關係模型。它們之間的根本區別在於資料之間聯絡的表示方式不同(即記錄型之間的****不同)。層次模型以「樹結構」表示資料之間的聯絡。網狀模型是以「圖結構」來表示資料之間的聯絡。關係模型是用「二維表」(或稱為關係)來表示資料之間的聯絡的。

1.層次模型(hierchical)

層次模型是資料庫系統最早使用的一種模型,它的資料結構是一棵「有向樹」。根結點在最上端,層次最高,子結點在下,逐層排列。層次模型的特徵是:

最有影響的層次模型的dbs是20世紀60年代末,ibm公司推出的ims層次模型資料庫系統。

2.網狀模型(network)

網狀模型以網狀結構表示實體與實體之間的聯絡。網中的每乙個結點代表乙個記錄型別,聯絡用鏈結指標來實現。網狀模型可以表示多個從屬關係的聯絡,也可以表示資料間的交叉關係,即資料間的橫向關係與縱向關係,它是層次模型的擴充套件。網狀模型可以方便地表示各種型別的聯絡,但結構複雜,實現的演算法難以規範化。其特徵是:

下圖所示為乙個系教務管理網狀資料模型。

3. 關係模型(relation)

關係模型以二維表結構來表示實體與實體之間的聯絡,它是以關係數學理論為基礎的。關係模型的資料結構是乙個「二維表框架」組成的集合。每個二維表又可稱為關係。在關係模型中,操作的物件和結果都是二維表。關係模型是目前最流行的資料庫模型。支援關係模型的資料庫管理系統稱為關聯式資料庫管理系統,access就是一種關聯式資料庫管理系統。圖所示為乙個簡單的關係模型,其中圖(a)所示為關係模式,圖(b)所示為這兩個關係模型的關係,關係名稱分別為教師關係和課程關係,每個關係均含3個元組,其主碼均為「教師編號」。

在關係模型中基本資料結構就是二維表,不用像層次或網狀那樣的鏈結指標。記錄之間的聯絡是通過不同關係中同名屬性來體現的。例如,要查詢「劉晉」老師所上的課程,可以先在教師關係中根據姓名找到教師編號「1984030」,然後在課程關係中找到「1984030」任課教師編號對應的課程名即可。通過上述查詢過程,同名屬性教師編號起到了連線兩個關係的紐帶作用。由此可見,關係模型中的各個關係模式不應當是孤立的,也不是隨意拼湊的一堆二維表,它必須滿足相應的要求。

關係是乙個二維表,即元組的集合。關係框架是乙個關係的屬性名錶。形式化表示為:

其中,r為關係名,a

i(i=1,2,…,n)為關係的屬性名。

關係之間通過公共屬性實現聯絡。例如,圖所示為兩個關係,通過「教師編號」公共屬性實現兩個關係之間的聯絡。

關聯式資料庫是指對應於乙個關係模型的所有關係的集合。例如,在乙個教務管理關聯式資料庫中,包含教師關係、課程關係、學生關係、任課關係、成績關係等。

(2)檢視設計
檢視設計是

資料庫設計

的乙個階段,在資料庫的概念設計過程中,先選擇區域性應用,獲得一分e-r圖;再進行檢視設計,其主要有三種設計次序,一、自頂向下。即從抽象級別高的且普遍的物件開始逐步細化、具體化與特殊化。二、由底向上。即由具體的物件開始,逐步抽象,普遍化與一般化,最後形成乙個完整的檢視設計。三、由內向外。即從最基本的與最明顯的物件入手,逐步擴充至非基本、不明顯的其他物件。

資料庫 資料庫基礎

什麼是sql 結構化查詢語言 structtured query language sql的作用 啟動mysql.exe,連線伺服器後,就可以使用sql來操作伺服器了。類似php中操作mysql的語句就是sql語句 sql標準 由國際標準化組織 iso 制定的,對dbms 資料庫管理系統 的統一操作...

資料庫基礎 資料庫設計

一 資料庫生命週期 1.週期 需求分析,概念結構設計,邏輯設計,物理設計,系統實施,系統執行和維護。2.響應的文件 二 正規化 一般資料庫要求規範化到第三正規化,視具體需求重新調整。第一正規化 1nf 強調列的原子性,即列不能分為多列。第二正規化 2nf 關係屬於第一正規化,且每乙個非主屬性完全函式...

資料庫基礎

一.資料庫事物特徵 1.atomic 原子性 不可分割 2.consistency 一致性 參照完整 3.isolation 隔離性 防止併發 4.durability 永續性 永久儲存資料 二.事物和併發 1.併發問題 第一類丟失,髒讀,虛讀,不可重複讀,第二類丟失更新 不可重複讀的特例 2.鎖的...