數據庫學習筆記(一)
2024-07-21 02:12:10
供稿:網友
這是我學習數據庫時候的筆記,都是非常簡單,非常基礎的有關數據庫的知識,最近整理一下,希望大家不要蛋蛋我啊,呵呵
數據庫學習筆記(一)
——緒論及基本概念
一, 數據:描述事物的符號記錄稱為數據。
二, 數據庫:指長期存儲在計算機內的、有組織、可共享的數據集合。
三, 數據庫管理系統:數據管理的軟件,主要以下功能:
1, 數據定義:ddl(data definition language)。
2, 數據操縱:dml (data manipulation language)。
3, 數據庫的運行管理
4, 數據庫的建立和維護功能
5, 數據庫的接口通訊
四, 數據庫系統:在計算機系統中引入數據庫后的系統,由以下部分組成:
1, 數據庫
2, 數據庫管理工具
3, 應用開發工具
4, 應用系統
5, 數據庫管理員和數據庫用戶
五, 數據庫管理技術的發展
1, 人工管理階段:
特點:數據不保存,應用程序管理數據,數據不共享,數據不具有獨立性。
2, 文件系統管理:
特點:數據可以長期保存,由文件系統管理數據,數據共享性差,冗余度大,數據獨立性差。
3, 數據庫系統階段:
特點:1,數據結構化
2,數據的共享性高,冗余度低,易擴充
3,數據的獨立性高
4,數據由dbms統一管理和控制。
dbms主要提供以下幾個方面的數據控制:
1, 數據的安全性保護
2, 數據的完整性檢查
3, 并發控制(多用戶使用的協調)
4, 數據庫的恢復
六, 數據模型
1, 數據模型的概念:抽象、表示和處理現實世界中的數據和信息,即現實的模擬。
2, 數據模型必須滿足的要求:
1,能比較真實的模擬現實世界;
2,容易為人理解
3,便于在計算機上實現
3, 數據模型的層次:
1,概念模型:也稱信息模型,按用戶的觀點來對數據和信息建模,主要用于數據庫設計:
1, 主要功能:概念模型用于信息世界的建模。概念模型不依賴于某一個dbms支持的數據模型。概念模型可以轉換為計算機上某一dbms支持的特定數據模型。
2, 主要特點:
(1)具有較強的語義表達能力,能夠方便、直接地表達應用中的各種語義知識。
(2)應該簡單、清晰、易于用戶理解,是用戶與數據庫設計人員之間進行交流的語言。
3, 概念模型的基本概念:
(1) 實體(entity):客觀存在并可相互區別的事物。
(2) 屬性(attribute):實體所具有的某一特性。
(3) 碼(key):唯一標識實體的屬性集。
(4) 域(domain):屬性的取值范圍。
(5) 實體型(entity type)相同屬性的實體具有的共同的特征。
(6) 實體集(entity set):同型實體的集合稱為實體集。
(7) 聯系(relationship)實體之間或實體內部的聯系,以下幾類:
i. 一對一聯系
ii. 一對多聯系
iii. 多對多聯系(m:n)
iv. 自聯系
4,概念模型的表示方法(e-r圖):
1, 實體型:用矩形表示
2, 屬性:用橢圓表示
3, 聯系:用菱形表示。
2,數據模型:主要包括網狀模型、曾是模型、關系模型,是按計算機系統的觀點對數據建模,主要用于dbms的實現。
1, 數據模型三要素:
1, 數據結構:
數據結構用于描述系統的靜態特性。它是所研究的對象類型的集合。這些對象是數據庫的組成部分,有兩類,一類研究與數據類型、內容、性質有關的對象。例如關系模型中的域、屬性、關系等;另一類研究與數據之間聯系有關的對象。
2, 數據操作:反映系統的動態屬性。
3, 數據的約束條件:
數據的約束條件是一組完整性規則的集合。完整性規則是給定的數據模型中數據及其聯系所具有的制約和儲存規則,用以限定符合數據模型的數據庫狀態以及狀態的變化,以保證數據的正確、有效、相容。此外,數據模型還應該提供定義完整性約束條件的機制。
3,數據模型的分類:
1, 層次模型(hierarchical model):
1,定義:
在數據庫定義中滿足下面兩個條件的基本層次聯系的集合為層次模型:a.有且只有一個結點沒有雙親結點(根結點)
b.以外的其他結點有且只有一個雙親結點。
2,特點:
任何一個給定的記錄值只有按其路徑查看時,才能顯出它的全部意義,沒有一個子女記錄值能夠脫離雙親記錄值而獨立存在。
3,層次數據模型的約束條件:
進行插入、刪除、更新操作時要滿足層次模型的完整性約束條件。進行插入操作時,如果沒有相應的雙親結點值就不能插入子女結點值。 進行刪除操作時,如果刪除雙親結點值,則相應的子女結點值也被同時刪除。進行更新操作時,應更新所有相應記錄,以保證數據的一致性。
4,層次模型的連接結構:
1. 鄰接法:按照層次樹前序穿越的順序把所有記錄值依次鄰接存放,即通過物理空間的位置相鄰來實現層次順序。
2.鏈接法:用指引元來反映數據之間的層次聯系。
4, 層次模型的優缺點:
優點:
1.數據模型比較簡單,操作簡單。
2.對于實體間聯系是固定的,且預先定義好的應用系統,性能較高。
3.提供良好的完整性支持。
缺點:
1.不適合于表示非層次性的聯系。
2.對插入和刪除操作的限制比較多。
3.查詢子女結點必須通過雙親結點。
4.由于結構嚴密,層次命令趨于程序化。
2, 網狀模型(network model)
3, 面向對象模型(object oriented model)
4, 關系模型(realational model)
(1) 相關概念:
i. 關系:一張二維表
ii. 元組(tuple):表中的一行為一個元組。
iii. 屬性(attribute):表中的一列為一個屬性。
iv. 主碼(key):表中的某個屬性組,可以確定一個元組。
v. 域(domain):屬性取值范圍。
vi. 分量:元組中的一個屬性值。
vii. 關系模式:對關系的描述,一般表示為:
關系名(屬性1,屬性2,等等)
(2) 優缺點:
優點:
1)關系模型是建立在嚴格的數學概念的基礎上的。
2)無論實體還是實體之間的聯系都用關系來表示。對數據的檢索結果也是關系(即表),因此 概念單一,其數據結構簡單、清晰。
3)關系模型的存取路徑對用戶透明,從而具有更高的數據獨立性,更好的安全保密性,也簡化了程序員的工作和數據庫開發建立的工作。
缺點:
由于存取路徑對用戶透明,查詢效率往往不如非關系數據模型。因此為了提高性能,必須對用戶的查詢請求進行優化,增加了開發數據庫管理系統的負擔。
未完待續
小康
2004年2月21日星期六
e-mail:[email protected]
中國最大的web開發資源網站及技術社區,