資源描述:
《數(shù)據(jù)庫基礎(chǔ)概述ppt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、SQLServer數(shù)據(jù)庫原理及應(yīng)用(第二版)第1章數(shù)據(jù)庫基礎(chǔ)概述數(shù)據(jù)庫系統(tǒng)簡介1.1數(shù)據(jù)庫系統(tǒng)的組成1.2關(guān)系型數(shù)據(jù)庫1.3關(guān)系型數(shù)據(jù)庫的設(shè)計1.4數(shù)據(jù)庫技術(shù)研究解決計算機信息處理過程中大量數(shù)據(jù)有效地組織和存儲的問題,在數(shù)據(jù)庫系統(tǒng)中減少數(shù)據(jù)存儲冗余,實現(xiàn)數(shù)據(jù)共享,保障數(shù)據(jù)安全以及高效地檢索數(shù)據(jù)和處理數(shù)據(jù)。1.1數(shù)據(jù)庫系統(tǒng)簡介數(shù)據(jù)管理是指對數(shù)據(jù)的組織、存儲、維護和使用等。數(shù)據(jù)管理的方法分為三個階段:人工管理階段、文件管理階段和數(shù)據(jù)庫系統(tǒng)階段。1.2數(shù)據(jù)庫系統(tǒng)的組成一個數(shù)據(jù)庫系統(tǒng)(DatabaseSy
2、stem)一般是由數(shù)據(jù)庫(Database)、數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)以及數(shù)據(jù)庫用戶組成。廣義地說,數(shù)據(jù)庫系統(tǒng)是由計算機硬件、操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)以及在它支持下建立起來的數(shù)據(jù)庫、數(shù)據(jù)庫應(yīng)用程序、用戶和維護人員組成的一個整體。1.2.1數(shù)據(jù)庫1.?dāng)?shù)據(jù)庫的基本概念數(shù)據(jù)庫是存儲在計算機系統(tǒng)內(nèi)的有結(jié)構(gòu)的數(shù)據(jù)的集合。這些數(shù)據(jù)是被數(shù)據(jù)庫管理系統(tǒng)按一定的組織形式存放在各個數(shù)據(jù)庫文件中的。數(shù)據(jù)庫是由很多數(shù)據(jù)庫文件以及若干輔助操作文件組成的。2.?dāng)?shù)據(jù)庫的基本模
3、型基本的數(shù)據(jù)庫模型有三種:網(wǎng)狀數(shù)據(jù)庫模型、層次數(shù)據(jù)庫模型和關(guān)系型數(shù)據(jù)庫模型。關(guān)系型數(shù)據(jù)庫模型是以二維矩陣來存儲數(shù)據(jù)的,行和列形成一個關(guān)聯(lián)的數(shù)據(jù)表。1.2.2數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)是指在操作系統(tǒng)的支持下幫助用戶建立、使用和管理數(shù)據(jù)庫的軟件系統(tǒng)。通常包含數(shù)據(jù)描述語言、數(shù)據(jù)操作語言以及管理和控制程序三個組成部分。1.?dāng)?shù)據(jù)描述語言(DataDescriptionLanguage)用來描述數(shù)據(jù)庫的結(jié)構(gòu),供用戶建立數(shù)據(jù)庫。2.?dāng)?shù)據(jù)操作語言(DataManipulationLangUage,DML)供用戶
4、對數(shù)據(jù)庫進行數(shù)據(jù)的查詢(數(shù)據(jù)的檢索和統(tǒng)計等)和處理(數(shù)據(jù)的增加、刪除和修改等)等操作。3.管理和控制程序包括安全、通信控制和工作日志等。1.2.3數(shù)據(jù)庫系統(tǒng)的用戶1.系統(tǒng)程序員2.?dāng)?shù)據(jù)庫管理員3.應(yīng)用程序員4.操作員1.2.4數(shù)據(jù)庫系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)1.MainFrame大型數(shù)據(jù)庫2.本地小型數(shù)據(jù)庫3.分布式數(shù)據(jù)庫4.客戶機/服務(wù)器數(shù)據(jù)庫1.3關(guān)系型數(shù)據(jù)庫關(guān)系型數(shù)據(jù)庫是指一些相關(guān)的表和其他數(shù)據(jù)庫對象的集合。在關(guān)系型數(shù)據(jù)庫中,信息存放在二維表格結(jié)構(gòu)的表中,一個關(guān)系型數(shù)據(jù)庫包含多個數(shù)據(jù)表,每一個表包含行(
5、記錄)和列(字段)。關(guān)系型數(shù)據(jù)庫都有多個表。關(guān)系型數(shù)據(jù)庫所包含的表之間是有關(guān)聯(lián)的,關(guān)聯(lián)性由主鍵、外鍵所體現(xiàn)的參照關(guān)系實現(xiàn)。關(guān)系型數(shù)據(jù)庫不僅包含表,還包含其他數(shù)據(jù)庫對象,例如關(guān)系圖、視圖、存儲過程和索引等。1.3.2關(guān)系型數(shù)據(jù)庫與表關(guān)系型數(shù)據(jù)庫是由多個表和其他數(shù)據(jù)庫對象組成的。表是一種最基本的數(shù)據(jù)庫對象,是由行和列組成的,表中的每一行通常稱為一條記錄,表中的每一列稱為一個字段,表頭的各列給出了各個字段的名稱。圖1-1學(xué)生信息表1.3.3主鍵與外鍵表中的每行記錄都必須是惟一的,而不允許出現(xiàn)完全相同的記
6、錄。通過定義主鍵(PRIMARYKEY)來保證記錄(實體)的惟一性。一個表的主鍵由一個或多個字段組成,其值具有惟一性,而且不允許取空值(NULL),主鍵的作用是惟一地標識表中的每一條記錄。為了惟一地標識實體的每一個實例,每個數(shù)據(jù)庫表都應(yīng)當(dāng)有一個主鍵,而且只能有一個主鍵。有時表中可能沒有一個字段具有惟一性,沒有任何字段可以作為表的主鍵。在這種情況下,可以考慮使用兩個或兩個以上字段的組合作為主鍵。一個關(guān)系型數(shù)據(jù)庫可能包含多個表,可以通過外鍵(FOREIGNKEY)使這些表之間關(guān)聯(lián)起來。如果在表A中有一
7、個字段對應(yīng)于表B中的主鍵,則該字段稱為表A的外鍵。圖1-2主鍵與外鍵的關(guān)系1.3.4字段約束設(shè)計表時,可對表中的一個字段或多個字段的組合設(shè)置約束條件,讓SQLServer檢查該字段的輸入值是否符合這個約束條件。約束分為表級約束和字段級約束兩種。表級約束是一個表中幾個字段的約束,字段級約束則是對表中一個字段的約束。幾種常見的約束形式。1.PRIMARYKEYPRIMARYKEY用來保證表中每條記錄的惟一性??捎靡粋€字段或多個字段(最多16個字段)的組合作為這個表的主鍵。用單個字段作為主鍵時,使用字段
8、級約束;用字段組合作為主鍵時,則使用表級約束。每個表只能有一個主鍵。如果不在主鍵字段中輸入數(shù)據(jù),或輸入的數(shù)據(jù)在前面已經(jīng)輸入過,則這條記錄將被拒絕。2.FOREIGNKEYFOREIGNKEY字段與其他表中的主鍵字段或具有惟一性的字段相對應(yīng),其值必須在所引用的表中存在,而且所引用的表必須存放在同一關(guān)系型數(shù)據(jù)庫中。如果在外鍵字段中輸入一個非NULL值,但該值在所引用的表中并不存在,則這條記錄也會被拒絕。外鍵字段本身的值不要求是惟一的。3.NULL與NOTNULL若在一個字段中允許不輸入