![第1章 數(shù)據(jù)庫基礎(chǔ)知識_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/31/b38a2c12-dcab-4955-b2ff-a1c44469c8d9/b38a2c12-dcab-4955-b2ff-a1c44469c8d91.gif)
![第1章 數(shù)據(jù)庫基礎(chǔ)知識_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/31/b38a2c12-dcab-4955-b2ff-a1c44469c8d9/b38a2c12-dcab-4955-b2ff-a1c44469c8d92.gif)
![第1章 數(shù)據(jù)庫基礎(chǔ)知識_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/31/b38a2c12-dcab-4955-b2ff-a1c44469c8d9/b38a2c12-dcab-4955-b2ff-a1c44469c8d93.gif)
![第1章 數(shù)據(jù)庫基礎(chǔ)知識_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/31/b38a2c12-dcab-4955-b2ff-a1c44469c8d9/b38a2c12-dcab-4955-b2ff-a1c44469c8d94.gif)
![第1章 數(shù)據(jù)庫基礎(chǔ)知識_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/31/b38a2c12-dcab-4955-b2ff-a1c44469c8d9/b38a2c12-dcab-4955-b2ff-a1c44469c8d95.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、教材:教材:SQL Server 2012SQL Server 2012數(shù)據(jù)庫應用與開發(fā)教程數(shù)據(jù)庫應用與開發(fā)教程清華大學出版社清華大學出版社20152015李春葆等李春葆等 1.1.1 1.1.1 信息與數(shù)據(jù)信息與數(shù)據(jù)l “數(shù)據(jù)數(shù)據(jù)”是將現(xiàn)實世界中的各種信息記錄下來的、可是將現(xiàn)實世界中的各種信息記錄下來的、可以識別的符號。以識別的符號。l 數(shù)據(jù)是信息的載體,是信息的具體表示形式,而信息數(shù)據(jù)是信息的載體,是信息的具體表示形式,而信息是數(shù)據(jù)的內(nèi)涵。是數(shù)據(jù)的內(nèi)涵。l 信息與數(shù)據(jù)是密切相關(guān)聯(lián)的,信息是各種數(shù)據(jù)所包括信息與數(shù)據(jù)是密切相關(guān)聯(lián)的,信息是各種數(shù)據(jù)所包括的意義,數(shù)據(jù)則是載荷信息的物理符號。的意義
2、,數(shù)據(jù)則是載荷信息的物理符號。1.1.2 1.1.2 數(shù)據(jù)處理數(shù)據(jù)處理數(shù)據(jù)處理數(shù)據(jù)處理 20 20世紀世紀5050年代中期以前,計算機主要用于科學計算。年代中期以前,計算機主要用于科學計算。在這一階段,計算機除硬件外,沒有管理數(shù)據(jù)的軟件。在這一階段,計算機除硬件外,沒有管理數(shù)據(jù)的軟件。1.2.1 1.2.1 人工管理階段人工管理階段l 數(shù)據(jù)不保存。數(shù)據(jù)不保存。l 數(shù)據(jù)面向程序。數(shù)據(jù)面向程序。l 編寫程序時要安排數(shù)據(jù)的物理存儲。編寫程序時要安排數(shù)據(jù)的物理存儲。此階段的特點:此階段的特點:1.2.2 1.2.2 文件系統(tǒng)管理階段文件系統(tǒng)管理階段 在在2020世紀世紀5050年代后期至年代后期至20
3、20世紀世紀6060年代中期,計算機年代中期,計算機外存已有了磁鼓、磁盤等存儲設備,軟件有了操作系統(tǒng)。外存已有了磁鼓、磁盤等存儲設備,軟件有了操作系統(tǒng)。 人們在操作系統(tǒng)的支持下,設計開發(fā)了一種專門管人們在操作系統(tǒng)的支持下,設計開發(fā)了一種專門管理數(shù)據(jù)的計算機軟件,稱之為文件系統(tǒng)。理數(shù)據(jù)的計算機軟件,稱之為文件系統(tǒng)。此階段的特點:此階段的特點:l 數(shù)據(jù)以文件的形式長期保存。數(shù)據(jù)以文件的形式長期保存。l 數(shù)據(jù)的物理結(jié)構(gòu)與邏輯結(jié)構(gòu)有了區(qū)別,但比較簡單。數(shù)據(jù)的物理結(jié)構(gòu)與邏輯結(jié)構(gòu)有了區(qū)別,但比較簡單。l 程序與數(shù)據(jù)之間有一定的獨立性。程序與數(shù)據(jù)之間有一定的獨立性。1.2.3 1.2.3 數(shù)據(jù)庫系統(tǒng)管理階段
4、數(shù)據(jù)庫系統(tǒng)管理階段 從從2020世紀世紀6060年代末期開始,隨著計算機技術(shù)的發(fā)展,年代末期開始,隨著計算機技術(shù)的發(fā)展,數(shù)據(jù)管理的規(guī)模越來越大,數(shù)據(jù)量急劇增加,數(shù)據(jù)共享數(shù)據(jù)管理的規(guī)模越來越大,數(shù)據(jù)量急劇增加,數(shù)據(jù)共享的要求越來越高。這時磁盤技術(shù)取得了重要進展,為數(shù)的要求越來越高。這時磁盤技術(shù)取得了重要進展,為數(shù)據(jù)庫技術(shù)的發(fā)展提供了物質(zhì)條件。據(jù)庫技術(shù)的發(fā)展提供了物質(zhì)條件。 人們開發(fā)出了一種新的、先進的數(shù)據(jù)管理方法,將人們開發(fā)出了一種新的、先進的數(shù)據(jù)管理方法,將數(shù)據(jù)存儲在數(shù)據(jù)庫中,由數(shù)據(jù)庫管理軟件對其進行管理。數(shù)據(jù)存儲在數(shù)據(jù)庫中,由數(shù)據(jù)庫管理軟件對其進行管理。此階段的特點:此階段的特點:l 數(shù)據(jù)共
5、享。數(shù)據(jù)共享。l 面向全組織的數(shù)據(jù)結(jié)構(gòu)化。面向全組織的數(shù)據(jù)結(jié)構(gòu)化。l 數(shù)據(jù)獨立性。數(shù)據(jù)獨立性。l 可控數(shù)據(jù)冗余度??煽財?shù)據(jù)冗余度。l 統(tǒng)一數(shù)據(jù)控制功能。統(tǒng)一數(shù)據(jù)控制功能。數(shù)據(jù)庫系統(tǒng)和文件系統(tǒng)的區(qū)別:數(shù)據(jù)庫系統(tǒng)和文件系統(tǒng)的區(qū)別: 1.3.1 1.3.1 數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫是至少符合以下特征的數(shù)據(jù)集合:數(shù)據(jù)庫是至少符合以下特征的數(shù)據(jù)集合:l 數(shù)據(jù)庫中的數(shù)據(jù)是按一定的數(shù)據(jù)模型來組織的,而不數(shù)據(jù)庫中的數(shù)據(jù)是按一定的數(shù)據(jù)模型來組織的,而不是雜亂無章的。是雜亂無章的。l 數(shù)據(jù)庫的存儲介質(zhì)通常是硬盤、磁帶和光盤等,故可數(shù)據(jù)庫的存儲介質(zhì)通常是硬盤、磁帶和光盤等,故可大量地、能夠地存儲及高效地使用。大量地、能夠
6、地存儲及高效地使用。l 數(shù)據(jù)庫中的數(shù)據(jù)能為眾多用戶所共享,能方便地為不數(shù)據(jù)庫中的數(shù)據(jù)能為眾多用戶所共享,能方便地為不同的應用服務。同的應用服務。l 數(shù)據(jù)庫是一個有機的數(shù)據(jù)集成體,它由多種應用的數(shù)數(shù)據(jù)庫是一個有機的數(shù)據(jù)集成體,它由多種應用的數(shù)據(jù)集成而來,故具有較少的冗余、較高的獨立性。據(jù)集成而來,故具有較少的冗余、較高的獨立性。數(shù)據(jù)庫的結(jié)構(gòu)可以分為數(shù)據(jù)庫的結(jié)構(gòu)可以分為3 3個層次:個層次:1.3.2 1.3.2 數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng) 數(shù)據(jù)庫管理系統(tǒng)(數(shù)據(jù)庫管理系統(tǒng)(Data Base Management SystemData Base Management System,DBMSDBM
7、S)是由一組程序構(gòu)成,其主要功能是完成對數(shù)據(jù)庫中數(shù))是由一組程序構(gòu)成,其主要功能是完成對數(shù)據(jù)庫中數(shù)據(jù)定義和數(shù)據(jù)操作,提供給用戶一個簡明的接口,實現(xiàn)事務據(jù)定義和數(shù)據(jù)操作,提供給用戶一個簡明的接口,實現(xiàn)事務處理等。處理等。 這樣,可以把對這樣,可以把對“存儲數(shù)據(jù)存儲數(shù)據(jù)”的管理、維護和使用的復的管理、維護和使用的復雜性都轉(zhuǎn)嫁給雜性都轉(zhuǎn)嫁給DBMSDBMS,以方便數(shù)據(jù)庫系統(tǒng)的開發(fā)。,以方便數(shù)據(jù)庫系統(tǒng)的開發(fā)。1. DBMS1. DBMS的主要功能的主要功能l 數(shù)據(jù)庫定義功能。數(shù)據(jù)庫定義功能。l 數(shù)據(jù)操作功能。數(shù)據(jù)操作功能。l 數(shù)據(jù)庫運行管理功能。數(shù)據(jù)庫運行管理功能。l 數(shù)據(jù)的組織、管理和存儲。數(shù)據(jù)的組
8、織、管理和存儲。l 數(shù)據(jù)庫的建立和維護功能。數(shù)據(jù)庫的建立和維護功能。l 數(shù)據(jù)通信功能。數(shù)據(jù)通信功能。2. DBMS2. DBMS的組成的組成l 語言編譯處理程序。語言編譯處理程序。l 系統(tǒng)運行控制程序。系統(tǒng)運行控制程序。l 系統(tǒng)建立、維護程序。系統(tǒng)建立、維護程序。l 數(shù)據(jù)字典。數(shù)據(jù)字典。3. 3. 主流的主流的DBMSDBMS排名排名DBMSDBMS數(shù)據(jù)庫模型數(shù)據(jù)庫模型1 1ORACLEORACLE關(guān)系型關(guān)系型DBMSDBMS2 2MySQLMySQL關(guān)系型關(guān)系型DBMSDBMS3 3SQL ServerSQL Server關(guān)系型關(guān)系型DBMSDBMS4 4PostgreSQLPostgreS
9、QL關(guān)系型關(guān)系型DBMSDBMS5 5MongoDBMongoDB文檔存儲文檔存儲6 6DB2DB2關(guān)系型關(guān)系型DBMSDBMS7 7AccessAccess關(guān)系型關(guān)系型DBMSDBMS8 8SQLiteSQLite關(guān)系型關(guān)系型DBMSDBMS9 9CassandraCassandra列存儲列存儲1010SybabaeSybabae關(guān)系型關(guān)系型DBMSDBMS 據(jù)權(quán)威的據(jù)權(quán)威的DB-ENGINESDB-ENGINES統(tǒng)計,至統(tǒng)計,至20142014年年9 9月,排名前月,排名前1010位的位的DBMSDBMS如表如表1.11.1所示。所示。1.3.3 1.3.3 數(shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng) 數(shù)據(jù)庫系
10、統(tǒng)(數(shù)據(jù)庫系統(tǒng)(Database SystemDatabase System,DBSDBS)是數(shù)據(jù)庫應用)是數(shù)據(jù)庫應用系統(tǒng)的簡稱。數(shù)據(jù)庫系統(tǒng)的組成及其各組件之間的關(guān)系如圖系統(tǒng)的簡稱。數(shù)據(jù)庫系統(tǒng)的組成及其各組件之間的關(guān)系如圖1.61.6所示。所示。數(shù)據(jù)庫數(shù)據(jù)庫操作系統(tǒng)操作系統(tǒng)DBMSDBMS應用程序應用程序用戶用戶1 1 用戶用戶2 2用戶用戶n nDBSDBSDBADBA應用程序員應用程序員n 計算機系統(tǒng)計算機系統(tǒng):由硬件和必需的軟件組成。:由硬件和必需的軟件組成。n 數(shù)據(jù)庫:數(shù)據(jù)庫:是指數(shù)據(jù)庫系統(tǒng)中集中存儲的一批數(shù)據(jù)的集是指數(shù)據(jù)庫系統(tǒng)中集中存儲的一批數(shù)據(jù)的集合。合。n DBMSDBMS:用于
11、負責數(shù)據(jù)庫存取、維護和管理。用于負責數(shù)據(jù)庫存取、維護和管理。 n 應用程序:應用程序:界于用戶和數(shù)據(jù)庫管理系統(tǒng)之間,是指完界于用戶和數(shù)據(jù)庫管理系統(tǒng)之間,是指完成用戶操作的程序。成用戶操作的程序。n 用戶:用戶:是指存儲、維護和檢索數(shù)據(jù)庫中數(shù)據(jù)的使用人是指存儲、維護和檢索數(shù)據(jù)庫中數(shù)據(jù)的使用人員。數(shù)據(jù)庫系統(tǒng)中主要有員。數(shù)據(jù)庫系統(tǒng)中主要有3 3類用戶:終端用戶、應用類用戶:終端用戶、應用程序員和數(shù)據(jù)庫管理員。程序員和數(shù)據(jù)庫管理員。 數(shù)據(jù)模型是描述數(shù)據(jù)及其聯(lián)系的模型,是對現(xiàn)實世數(shù)據(jù)模型是描述數(shù)據(jù)及其聯(lián)系的模型,是對現(xiàn)實世界數(shù)據(jù)特征與聯(lián)系的抽象反映。界數(shù)據(jù)特征與聯(lián)系的抽象反映。1.4.1 1.4.1 三
12、個世界及其關(guān)系三個世界及其關(guān)系客觀客觀世界世界概念概念世界世界DBMSDBMS支持的支持的數(shù)據(jù)模型數(shù)據(jù)模型認識、分認識、分析和抽象析和抽象描述、規(guī)描述、規(guī)范和轉(zhuǎn)換范和轉(zhuǎn)換現(xiàn)實世界現(xiàn)實世界信息世界信息世界機器世界機器世界1. 1. 現(xiàn)實世界現(xiàn)實世界 現(xiàn)實世界就是客觀存在的現(xiàn)實世界,它由事物及其相現(xiàn)實世界就是客觀存在的現(xiàn)實世界,它由事物及其相互之間的聯(lián)系組成的?;ブg的聯(lián)系組成的。 如學生成績管理中,學生的特征可用學號、姓名和性如學生成績管理中,學生的特征可用學號、姓名和性別等來表示。別等來表示。2. 2. 信息世界信息世界 信息世界是現(xiàn)實世界在人們頭腦中反映并用文字或符信息世界是現(xiàn)實世界在人們頭
13、腦中反映并用文字或符號記載下來,是人對現(xiàn)實世界的認識抽象過程,經(jīng)過選擇、號記載下來,是人對現(xiàn)實世界的認識抽象過程,經(jīng)過選擇、命名、分類等抽象工作后進入信息世界。命名、分類等抽象工作后進入信息世界。 信息世界是一種相對抽象和概念化的世界,它介于現(xiàn)信息世界是一種相對抽象和概念化的世界,它介于現(xiàn)實世界和機器世界之間。實世界和機器世界之間。信息世界的基本概念如下:信息世界的基本概念如下:l 實體:實體:現(xiàn)實世界中存在的且可區(qū)分的事物稱為實體,它現(xiàn)實世界中存在的且可區(qū)分的事物稱為實體,它是信息世界的基本單位。實體可以是人,也可以是物;是信息世界的基本單位。實體可以是人,也可以是物;可以指實際的對象,也可
14、以指某些概念;可以指事物與可以指實際的對象,也可以指某些概念;可以指事物與事物間的聯(lián)系。如學生和一個學生選課都是實體。事物間的聯(lián)系。如學生和一個學生選課都是實體。l 屬性:屬性:實體所具有的某方面的特性。一個實體可以由若實體所具有的某方面的特性。一個實體可以由若干個屬性來刻畫。如公司員工實體有干個屬性來刻畫。如公司員工實體有“員工編號員工編號”、“姓名姓名”、“年齡年齡”、“性別性別”等屬性。再如學生實體等屬性。再如學生實體有有“學號學號”、“姓名姓名”和和“性別性別”等屬性。等屬性。l 屬性域:屬性域:屬性域是指屬性的取值范圍,含值的類型。屬性域是指屬性的取值范圍,含值的類型。如姓名的域為字
15、符串集合,性別的域為如姓名的域為字符串集合,性別的域為“男男”、“女女”等。等。l 實體型:實體型:具有相同屬性的實體必須具有共同的特性。具有相同屬性的實體必須具有共同的特性。用實體名及其屬性名集合來抽象和刻畫同類實體,稱用實體名及其屬性名集合來抽象和刻畫同類實體,稱為實體型。例如,學生(學號,姓名,性別,班號)為實體型。例如,學生(學號,姓名,性別,班號)就是一個實體型。就是一個實體型。l 實體集:實體集:同型實體的集合稱為實體集。如全體學生就同型實體的集合稱為實體集。如全體學生就是一個實體集。是一個實體集。l 碼(或關(guān)鍵字)碼(或關(guān)鍵字):碼是能唯一標識每個實體的屬性集。:碼是能唯一標識每
16、個實體的屬性集。例如,例如,“學號學號”是學生實體的碼,每個學生的學號都是學生實體的碼,每個學生的學號都唯一代表了一個學生。唯一代表了一個學生。3. 3. 機器世界機器世界 用計算機管理信息,必須對信息進行數(shù)據(jù)化,數(shù)據(jù)用計算機管理信息,必須對信息進行數(shù)據(jù)化,數(shù)據(jù)化后的信息成為機器世界的是數(shù)據(jù),數(shù)據(jù)是能夠被計算化后的信息成為機器世界的是數(shù)據(jù),數(shù)據(jù)是能夠被計算機識別、存儲并處理的。機識別、存儲并處理的。 數(shù)據(jù)化了的信息世界稱之為機器世界。數(shù)據(jù)化了的信息世界稱之為機器世界。機器世界的基本概念如下:機器世界的基本概念如下:l 數(shù)據(jù)項(或字段)數(shù)據(jù)項(或字段):標記實體屬性的命名單位,是數(shù)據(jù):標記實體屬
17、性的命名單位,是數(shù)據(jù)庫中的最小信息單位。庫中的最小信息單位。l 記錄記錄:字段值的有序集合。:字段值的有序集合。l 記錄型記錄型:字段名的有序集合。:字段名的有序集合。l 文件文件:同類記錄的集合。對應于實體集。:同類記錄的集合。對應于實體集。l 碼(或關(guān)鍵字)碼(或關(guān)鍵字):能唯一標識文件中每個記錄的字段或:能唯一標識文件中每個記錄的字段或字段集。字段集。 三個世界的術(shù)語雖各不相同,但存在對應關(guān)系。三個世三個世界的術(shù)語雖各不相同,但存在對應關(guān)系。三個世界術(shù)語之間的關(guān)系如圖界術(shù)語之間的關(guān)系如圖1.81.8所示。所示。10031003事物(學生)、特征(學號、姓名、性別、班號等)事物(學生)、特
18、征(學號、姓名、性別、班號等)記錄型記錄型記記錄錄集集實實體體集集實體型實體型現(xiàn)實世界現(xiàn)實世界學生學生學號學號姓名姓名性別性別出生日期出生日期班號班號學生學生1 1101101李軍李軍男男1993-2-201993-2-20學生學生2 2103103陸君陸君男男1991-6-31991-6-310011001學生學生3 3105105匡明匡明男男1992-10-201992-10-2010011001學生學生4 4107107王麗王麗女女1993-1-231993-1-2310031003學生學生5 5108108曾華曾華男男1993-9-11993-9-110031003學生學生6 6109
19、109王芳王芳女女1992-2-101992-2-1010011001屬性屬性信息世界信息世界數(shù)據(jù)項數(shù)據(jù)項機器世界機器世界實體實體記錄記錄 從現(xiàn)實世界到概念模型的轉(zhuǎn)換是由數(shù)據(jù)庫設計人員從現(xiàn)實世界到概念模型的轉(zhuǎn)換是由數(shù)據(jù)庫設計人員完成的,從概念模型對數(shù)據(jù)模型的轉(zhuǎn)換可以由數(shù)據(jù)庫設完成的,從概念模型對數(shù)據(jù)模型的轉(zhuǎn)換可以由數(shù)據(jù)庫設計人員完成,也可以由數(shù)據(jù)庫設計工具協(xié)助設計人員完計人員完成,也可以由數(shù)據(jù)庫設計工具協(xié)助設計人員完成,從數(shù)據(jù)模型對物理模型的轉(zhuǎn)換一般是由成,從數(shù)據(jù)模型對物理模型的轉(zhuǎn)換一般是由DBMSDBMS完成的。完成的。1.4.3 1.4.3 概念模型建模概念模型建模1. 1. 概念模型的特
20、點概念模型的特點l 具有較強的語義表達能力,能夠方便、直接地表達應具有較強的語義表達能力,能夠方便、直接地表達應用中的各種語義知識用中的各種語義知識. . l 簡單、清晰、易于用戶理解,是用戶與數(shù)據(jù)庫設計人簡單、清晰、易于用戶理解,是用戶與數(shù)據(jù)庫設計人員之間進行交流的語言。員之間進行交流的語言。2. 2. 兩個實體型之間的聯(lián)系兩個實體型之間的聯(lián)系(1 1)一對一聯(lián)系()一對一聯(lián)系(1 1:1 1) 對于實體集對于實體集A A中每一個實體,實體集中每一個實體,實體集B B中至多有一個中至多有一個(也可以沒有)實體與之聯(lián)系,反之亦然,則稱實體(也可以沒有)實體與之聯(lián)系,反之亦然,則稱實體A A與實
21、與實體體B B具有一對一聯(lián)系,記為具有一對一聯(lián)系,記為1 11 1,如圖,如圖1.91.9(a a)所示。)所示。 例如,一個部門有一個經(jīng)理,而每個經(jīng)理只在一個部門例如,一個部門有一個經(jīng)理,而每個經(jīng)理只在一個部門任職。這樣部門和經(jīng)理之間就具有一對一聯(lián)系。任職。這樣部門和經(jīng)理之間就具有一對一聯(lián)系。(2 2)一對多聯(lián)系()一對多聯(lián)系(1 1:n n) 對于實體集對于實體集A A中的每一個實體,實體集中的每一個實體,實體集B B中有中有n n個實體個實體(n n0 0)與之聯(lián)系,反之,對于實體集)與之聯(lián)系,反之,對于實體集B B中的每一個實體,中的每一個實體,實體集實體集A A中至多只有一個實體與之
22、聯(lián)系,則稱實體中至多只有一個實體與之聯(lián)系,則稱實體A A與實與實體體B B具有一對多聯(lián)系,記為具有一對多聯(lián)系,記為1 1n n,如圖,如圖1.91.9(b b)所示。)所示。 例如,一個部門有多個職工,這樣部門和職工之間例如,一個部門有多個職工,這樣部門和職工之間存在著一對多的聯(lián)系。存在著一對多的聯(lián)系。(3 3)多對多聯(lián)系()多對多聯(lián)系(mm:n n) 對于實體集對于實體集A A中的每一個實體,實體集中的每一個實體,實體集B B中有中有n n個實體個實體(n n0 0)與之聯(lián)系,反之,對于實體集)與之聯(lián)系,反之,對于實體集B B中的每一個實體,實中的每一個實體,實體集體集A A中有中有m m個
23、實體(個實體(m m0 0)與之聯(lián)系,則稱實體)與之聯(lián)系,則稱實體A A與實體與實體B B具有具有多對多聯(lián)系,記為多對多聯(lián)系,記為m mn n,如圖,如圖1.91.9(c c)所示。)所示。 例如,學校中的課程與學生之間就存在著多對多的聯(lián)系。例如,學校中的課程與學生之間就存在著多對多的聯(lián)系。每個課程可以供多個學生選修,而每個學生又都會選修多種課每個課程可以供多個學生選修,而每個學生又都會選修多種課程。這種關(guān)系可以有很多種處理的辦法。程。這種關(guān)系可以有很多種處理的辦法。3. 3. 概念模型的表示方法概念模型的表示方法 建立概念模型有多種工具,如建立概念模型有多種工具,如PowerDesigner
24、PowerDesigner就可以用就可以用于概念模型建模。如何表示概念模型是核心,表示概念模型于概念模型建模。如何表示概念模型是核心,表示概念模型的常用方法是實體聯(lián)系(的常用方法是實體聯(lián)系(E-RE-R)方法。)方法。 E-R E-R方法是抽象和描述現(xiàn)實世界的有力工具。用方法是抽象和描述現(xiàn)實世界的有力工具。用E-RE-R圖圖表示的概念模型與具體的表示的概念模型與具體的DBMSDBMS所支持的數(shù)據(jù)模型相獨立,是所支持的數(shù)據(jù)模型相獨立,是各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象,各種數(shù)據(jù)模型的共同基礎(chǔ),因而比數(shù)據(jù)模型更一般、更抽象,更接近現(xiàn)實世界。更接近現(xiàn)實世界。E-RE-R圖提供了表
25、示實體型、屬性和聯(lián)系的方式:圖提供了表示實體型、屬性和聯(lián)系的方式:l 實體型:實體型:用長方形或矩形表示,框內(nèi)寫明實體名。用長方形或矩形表示,框內(nèi)寫明實體名。l 屬性:屬性:用橢圓形表示,并用無向邊把實體型與屬性連用橢圓形表示,并用無向邊把實體型與屬性連接起來。接起來。l 聯(lián)系:聯(lián)系:用菱形表示,菱形框內(nèi)寫明聯(lián)系名。用無向邊用菱形表示,菱形框內(nèi)寫明聯(lián)系名。用無向邊把菱形與有關(guān)實體型連接起來,并在無向邊旁標上聯(lián)把菱形與有關(guān)實體型連接起來,并在無向邊旁標上聯(lián)系的類型。如果實體型之間的聯(lián)系也具有屬性,則把系的類型。如果實體型之間的聯(lián)系也具有屬性,則把屬性和菱形也用無向邊連接起來。屬性和菱形也用無向邊
26、連接起來。設計設計E-RE-R圖的過程如下:圖的過程如下: 首先確定實體:幾個實體及相應的實體名。首先確定實體:幾個實體及相應的實體名。 確定實體之間聯(lián)系類型:各實體之間是否有聯(lián)系,是確定實體之間聯(lián)系類型:各實體之間是否有聯(lián)系,是何種聯(lián)系類型及相應的聯(lián)系名。何種聯(lián)系類型及相應的聯(lián)系名。 連接實體和聯(lián)系,組合成連接實體和聯(lián)系,組合成E-RE-R圖。圖。 確定各實體型:給出各實體的實體型(含實體的屬確定各實體型:給出各實體的實體型(含實體的屬性)。性)。 【例例1.11.1】畫出一個百貨公司的畫出一個百貨公司的E-RE-R圖。某百貨公司圖。某百貨公司管轄若干連鎖商店,每家商店經(jīng)營若干種商品,每家商
27、管轄若干連鎖商店,每家商店經(jīng)營若干種商品,每家商店有若干名職工,但每個職工只能服務于一家商店。店有若干名職工,但每個職工只能服務于一家商店。 解:解:容易看出本例中有商店、商品和職工三個實體,容易看出本例中有商店、商品和職工三個實體,實體型的屬性如下:實體型的屬性如下:商店實體型:店號、店名、店址、店經(jīng)理。商店實體型:店號、店名、店址、店經(jīng)理。商品實體型:商品號、品名、單價、產(chǎn)地。商品實體型:商品號、品名、單價、產(chǎn)地。職工實體型:工號、姓名、性別、工資。職工實體型:工號、姓名、性別、工資。各實體型之間的聯(lián)系如下:各實體型之間的聯(lián)系如下:l 隸屬聯(lián)系:隸屬聯(lián)系:一家商店有多名職工,每名職工只能在
28、一家一家商店有多名職工,每名職工只能在一家商店工作,所以商店實體型和職工實體型是一對多的聯(lián)商店工作,所以商店實體型和職工實體型是一對多的聯(lián)系,該聯(lián)系反映出職工參加某商店工作的開始時間。其系,該聯(lián)系反映出職工參加某商店工作的開始時間。其屬性為:工號、店號、開始時間。屬性為:工號、店號、開始時間。l 經(jīng)營聯(lián)系:經(jīng)營聯(lián)系:每家商店經(jīng)營若干商品,每個商品也可以在每家商店經(jīng)營若干商品,每個商品也可以在多家商店中銷售,所以商品實體型和商店實體型是多對多家商店中銷售,所以商品實體型和商店實體型是多對多的聯(lián)系,該聯(lián)系反映出某家商店銷售某種商品的月銷多的聯(lián)系,該聯(lián)系反映出某家商店銷售某種商品的月銷售量。其屬性為
29、:商品號、店號、月銷售量。售量。其屬性為:商品號、店號、月銷售量。職職 工工商商 品品商商 店店經(jīng)營經(jīng)營隸屬隸屬n n1 1mm店經(jīng)理店經(jīng)理開始時間開始時間工號工號姓名姓名性別性別工資工資店名店名月銷售量月銷售量店址店址商品號商品號店號店號品名品名單價單價產(chǎn)地產(chǎn)地mm1.4.4 1.4.4 數(shù)據(jù)模型的組成要素數(shù)據(jù)模型的組成要素 數(shù)據(jù)模型是建立于概念模型的基礎(chǔ)上,是一個適合數(shù)據(jù)模型是建立于概念模型的基礎(chǔ)上,是一個適合于計算機表示的數(shù)據(jù)庫層的模型。數(shù)據(jù)模型組成的要素:于計算機表示的數(shù)據(jù)庫層的模型。數(shù)據(jù)模型組成的要素:數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的完整性約束條件。數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)的完整性約束條件
30、。1.1.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu) 數(shù)據(jù)結(jié)構(gòu)是刻畫一個數(shù)據(jù)模型性質(zhì)最重要的方面,數(shù)據(jù)結(jié)構(gòu)是刻畫一個數(shù)據(jù)模型性質(zhì)最重要的方面,通常按數(shù)據(jù)組織結(jié)構(gòu)的類型來命名數(shù)據(jù)模型,如層次結(jié)通常按數(shù)據(jù)組織結(jié)構(gòu)的類型來命名數(shù)據(jù)模型,如層次結(jié)構(gòu)、網(wǎng)狀圖結(jié)構(gòu)和關(guān)系結(jié)構(gòu)的數(shù)據(jù)模型分別命名為層次構(gòu)、網(wǎng)狀圖結(jié)構(gòu)和關(guān)系結(jié)構(gòu)的數(shù)據(jù)模型分別命名為層次模型、網(wǎng)狀模型和關(guān)系模型。模型、網(wǎng)狀模型和關(guān)系模型。 數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,其描述的內(nèi)容數(shù)據(jù)結(jié)構(gòu)是對系統(tǒng)靜態(tài)特性的描述,其描述的內(nèi)容有兩類:有兩類:l 與所研究的對象的類型、內(nèi)容和性質(zhì)有關(guān)的。如關(guān)與所研究的對象的類型、內(nèi)容和性質(zhì)有關(guān)的。如關(guān)系模型中的域、屬性、關(guān)系等。系模型中的域、
31、屬性、關(guān)系等。 l 數(shù)據(jù)之間聯(lián)系的表示方式。通常有隱式和顯式兩種,數(shù)據(jù)之間聯(lián)系的表示方式。通常有隱式和顯式兩種,隱式通過數(shù)據(jù)自身的關(guān)聯(lián)或位置順序表示,顯式通隱式通過數(shù)據(jù)自身的關(guān)聯(lián)或位置順序表示,顯式通過附加指針表示。過附加指針表示。2.2.數(shù)據(jù)操作數(shù)據(jù)操作 數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述,是數(shù)據(jù)庫中的數(shù)據(jù)操作是對系統(tǒng)動態(tài)特性的描述,是數(shù)據(jù)庫中的各種對象的實例(值)允許執(zhí)行的操作的集合。主要有各種對象的實例(值)允許執(zhí)行的操作的集合。主要有檢索和更新(插入、刪除、修改)兩類操作。檢索和更新(插入、刪除、修改)兩類操作。 數(shù)據(jù)模型必須定義這些操作的確切含義、操作符號、數(shù)據(jù)模型必須定義這些操作的確切
32、含義、操作符號、操作規(guī)則、實現(xiàn)操作的語言。操作規(guī)則、實現(xiàn)操作的語言。3.3.數(shù)據(jù)的完整性約束條件數(shù)據(jù)的完整性約束條件 數(shù)據(jù)的完整性約束條件是一組完整性規(guī)則的集合,數(shù)據(jù)的完整性約束條件是一組完整性規(guī)則的集合,給出數(shù)據(jù)及其聯(lián)系所具有的制約、依賴和存儲規(guī)則,用給出數(shù)據(jù)及其聯(lián)系所具有的制約、依賴和存儲規(guī)則,用于限定數(shù)據(jù)庫的狀態(tài)和狀態(tài)變化,保證數(shù)據(jù)庫中的數(shù)據(jù)于限定數(shù)據(jù)庫的狀態(tài)和狀態(tài)變化,保證數(shù)據(jù)庫中的數(shù)據(jù)的正確、有效、完全和相容。的正確、有效、完全和相容。1.4.5 1.4.5 常用的數(shù)據(jù)模型常用的數(shù)據(jù)模型1 1層次模型層次模型l 有且僅有一個結(jié)點沒有雙親,它就是根結(jié)點。有且僅有一個結(jié)點沒有雙親,它就是
33、根結(jié)點。l 其他結(jié)點有且僅有一個雙親。其他結(jié)點有且僅有一個雙親。企業(yè)企業(yè)人事處人事處財務處財務處生產(chǎn)處生產(chǎn)處張明張明李影李影企業(yè)實體企業(yè)實體部門實體部門實體人員實體人員實體2 2網(wǎng)狀模型網(wǎng)狀模型l 可有一個以上的結(jié)點沒有雙親??捎幸粋€以上的結(jié)點沒有雙親。l 至少有一個結(jié)點可以有多于一個雙親。至少有一個結(jié)點可以有多于一個雙親。臺式計算機臺式計算機筆記本筆記本平板電腦平板電腦手機手機打印機打印機李明李明許飛許飛陸冰陸冰商商品品實實體體銷銷售售人人員員實實體體3 3關(guān)系模型關(guān)系模型 關(guān)系模型是用二維表格結(jié)構(gòu)來表示實體以及實體之關(guān)系模型是用二維表格結(jié)構(gòu)來表示實體以及實體之間聯(lián)系的數(shù)據(jù)模型。間聯(lián)系的數(shù)據(jù)
34、模型。 關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)是“二維表二維表”組成的集合,一個組成的集合,一個二維表代表一個實體,又可稱為關(guān)系。二維表代表一個實體,又可稱為關(guān)系。 表由行和列組成,一行代表一個對象,一列代表實體表由行和列組成,一行代表一個對象,一列代表實體的一個屬性。因此可以說,關(guān)系模型是的一個屬性。因此可以說,關(guān)系模型是“關(guān)系模式關(guān)系模式”組組成的集合。成的集合。1.5.1 1.5.1 數(shù)據(jù)庫系統(tǒng)模式的概念數(shù)據(jù)庫系統(tǒng)模式的概念 數(shù)據(jù)模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描數(shù)據(jù)模式是數(shù)據(jù)庫中全體數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,它僅僅涉及到型的描述,不涉及到具體的值。模式的述,它僅僅涉及到型的描
35、述,不涉及到具體的值。模式的一個具體值稱為模式的一個實例。同一個模式可以有很多一個具體值稱為模式的一個實例。同一個模式可以有很多實例。模式是相對穩(wěn)定的,而實例是相對變動的。模式反實例。模式是相對穩(wěn)定的,而實例是相對變動的。模式反映的是數(shù)據(jù)的結(jié)構(gòu)及其關(guān)系,而實例反映的是數(shù)據(jù)庫某一映的是數(shù)據(jù)的結(jié)構(gòu)及其關(guān)系,而實例反映的是數(shù)據(jù)庫某一時刻的狀態(tài)。時刻的狀態(tài)。 模型與模式的區(qū)別是:模型是以圖形來表示的,給人模型與模式的區(qū)別是:模型是以圖形來表示的,給人以直觀清晰、一目了然之感。但計算機是無法識別的,必以直觀清晰、一目了然之感。但計算機是無法識別的,必須用一種語言(如由須用一種語言(如由DBMSDBMS提
36、供的提供的DDLDDL)來描述它。模式是對)來描述它。模式是對模型的描述。模型的描述。1.5.2 1.5.2 數(shù)據(jù)庫系統(tǒng)的三級組織結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的三級組織結(jié)構(gòu) 美國國家標準學會美國國家標準學會(ANSIANSI)所屬標準計劃和要求委員)所屬標準計劃和要求委員會在會在19751975年公布了一個關(guān)于數(shù)據(jù)庫標準的報告,提出了數(shù)年公布了一個關(guān)于數(shù)據(jù)庫標準的報告,提出了數(shù)據(jù)庫的三級模式結(jié)構(gòu),這就是有名的據(jù)庫的三級模式結(jié)構(gòu),這就是有名的SPARCSPARC分級結(jié)構(gòu)。分級結(jié)構(gòu)。u 概念模式。概念模式。簡稱模式、概念視圖或簡稱模式、概念視圖或DBADBA視圖,是對數(shù)據(jù)視圖,是對數(shù)據(jù)庫的整體邏輯結(jié)構(gòu)和特征的描
37、述,并不涉及數(shù)據(jù)的物理庫的整體邏輯結(jié)構(gòu)和特征的描述,并不涉及數(shù)據(jù)的物理存儲細節(jié)和硬件環(huán)境,是由多個概念記錄型組成,還包存儲細節(jié)和硬件環(huán)境,是由多個概念記錄型組成,還包括記錄間的聯(lián)系、數(shù)據(jù)的完整性和其他數(shù)據(jù)控制方面的括記錄間的聯(lián)系、數(shù)據(jù)的完整性和其他數(shù)據(jù)控制方面的要求。要求。u 內(nèi)模式。內(nèi)模式。又稱存儲模式,具體描述了數(shù)據(jù)如何組織存儲又稱存儲模式,具體描述了數(shù)據(jù)如何組織存儲在存儲介質(zhì)上。內(nèi)模式是系統(tǒng)程序員用一定的文件形式在存儲介質(zhì)上。內(nèi)模式是系統(tǒng)程序員用一定的文件形式組織起來的一個個存儲文件和聯(lián)系手段。一個數(shù)據(jù)庫只組織起來的一個個存儲文件和聯(lián)系手段。一個數(shù)據(jù)庫只有一個內(nèi)模式。有一個內(nèi)模式。u 外
38、模式。外模式。外模式通常是模式的一個子集,故又稱外模式外模式通常是模式的一個子集,故又稱外模式為子模式。外模式面向用戶,它是數(shù)據(jù)庫用戶能夠看到為子模式。外模式面向用戶,它是數(shù)據(jù)庫用戶能夠看到和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是與某一和使用的局部數(shù)據(jù)的邏輯結(jié)構(gòu)和特征的描述,是與某一應用有關(guān)的數(shù)據(jù)的邏輯表示。應用有關(guān)的數(shù)據(jù)的邏輯表示。關(guān)系數(shù)據(jù)庫的三級模式示例關(guān)系數(shù)據(jù)庫的三級模式示例概念模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述概念模式描述的是數(shù)據(jù)的全局邏輯結(jié)構(gòu),外模式描述的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。對應于同一個概念模式可以有的是數(shù)據(jù)的局部邏輯結(jié)構(gòu)。對應于同一個概念模式可以有任意多個外模式。對于每
39、一個外模式,數(shù)據(jù)庫系統(tǒng)都有一任意多個外模式。對于每一個外模式,數(shù)據(jù)庫系統(tǒng)都有一個外模式個外模式/ /概念模式映象,它定義了該外模式與概念模式概念模式映象,它定義了該外模式與概念模式之間的對應關(guān)系。這些映象定義通常包含在各自外模式的之間的對應關(guān)系。這些映象定義通常包含在各自外模式的描述中。描述中。當概念模式改變時(例如增加新的關(guān)系、新的屬性、當概念模式改變時(例如增加新的關(guān)系、新的屬性、改變屬性的數(shù)據(jù)類型等),由數(shù)據(jù)庫管理員對各個外模式改變屬性的數(shù)據(jù)類型等),由數(shù)據(jù)庫管理員對各個外模式/ /概念模式的映象作相應改變,可以使外模式保持不變。概念模式的映象作相應改變,可以使外模式保持不變。應用程序是
40、依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必應用程序是依據(jù)數(shù)據(jù)的外模式編寫的,從而應用程序不必修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯修改,保證了數(shù)據(jù)與程序的邏輯獨立性,簡稱數(shù)據(jù)的邏輯獨立性。獨立性。1.5.3 1.5.3 三個模式之間的兩層映象三個模式之間的兩層映象1.1. 外模式外模式/ /概念模式映象概念模式映象數(shù)據(jù)庫中只有一個概念模式,也只有一個內(nèi)模式,所以數(shù)據(jù)庫中只有一個概念模式,也只有一個內(nèi)模式,所以概念模式概念模式/ /內(nèi)模式映象是唯一的,它定義了數(shù)據(jù)庫全局邏輯內(nèi)模式映象是唯一的,它定義了數(shù)據(jù)庫全局邏輯結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應關(guān)系。結(jié)構(gòu)與存儲結(jié)構(gòu)之間的對應關(guān)系。例如,說明邏
41、輯記錄和字段在內(nèi)部是如何表示的。該映例如,說明邏輯記錄和字段在內(nèi)部是如何表示的。該映象定義通常包含在概念模式描述中。當數(shù)據(jù)庫的存儲結(jié)構(gòu)改象定義通常包含在概念模式描述中。當數(shù)據(jù)庫的存儲結(jié)構(gòu)改變了(例如選用了另一種存儲結(jié)構(gòu)),由數(shù)據(jù)庫管理員對概變了(例如選用了另一種存儲結(jié)構(gòu)),由數(shù)據(jù)庫管理員對概念模式念模式/ /內(nèi)模式映象作相應改變,可以使概念模式保持不變,內(nèi)模式映象作相應改變,可以使概念模式保持不變,從而應用程序也不必改變。保證了數(shù)據(jù)與程序的物理獨立性,從而應用程序也不必改變。保證了數(shù)據(jù)與程序的物理獨立性,簡稱數(shù)據(jù)的物理獨立性。簡稱數(shù)據(jù)的物理獨立性。2.2.概念模式概念模式/ /內(nèi)模式映象內(nèi)模式
42、映象1.5.4 1.5.4 數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)數(shù)據(jù)庫系統(tǒng)的結(jié)構(gòu)1.1.單用戶數(shù)據(jù)庫系統(tǒng)單用戶數(shù)據(jù)庫系統(tǒng) 整個數(shù)據(jù)庫系統(tǒng)(應用程序、整個數(shù)據(jù)庫系統(tǒng)(應用程序、DBMSDBMS、數(shù)據(jù))裝在一臺、數(shù)據(jù))裝在一臺計算機上,為一個用戶獨占,不同機器之間不能共享數(shù)據(jù)。計算機上,為一個用戶獨占,不同機器之間不能共享數(shù)據(jù)。早期的最簡單的數(shù)據(jù)庫系統(tǒng)便是如此。早期的最簡單的數(shù)據(jù)庫系統(tǒng)便是如此。2.2.主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)主從式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 該結(jié)構(gòu)是一臺主機帶多個終端的多用戶結(jié)構(gòu),數(shù)據(jù)庫系該結(jié)構(gòu)是一臺主機帶多個終端的多用戶結(jié)構(gòu),數(shù)據(jù)庫系統(tǒng)(包括應用程序、統(tǒng)(包括應用程序、DBMSDBMS、數(shù)據(jù))都集中存放在主機
43、上,所、數(shù)據(jù))都集中存放在主機上,所有處理任務都由主機來完成,各個用戶通過主機的終端并發(fā)有處理任務都由主機來完成,各個用戶通過主機的終端并發(fā)地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源。地存取數(shù)據(jù)庫,共享數(shù)據(jù)資源。3.3.分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)分布式結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 該結(jié)構(gòu)中,數(shù)據(jù)庫的數(shù)據(jù)在邏輯上是一個整體,但物該結(jié)構(gòu)中,數(shù)據(jù)庫的數(shù)據(jù)在邏輯上是一個整體,但物理地分布在計算機網(wǎng)絡的不同結(jié)點上,網(wǎng)絡中的每個結(jié)理地分布在計算機網(wǎng)絡的不同結(jié)點上,網(wǎng)絡中的每個結(jié)點都可以獨立處理本地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行局部應用點都可以獨立處理本地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行局部應用同時也可以同時存取和處理多個異地數(shù)據(jù)庫中的數(shù)據(jù),同時也可以同時存取
44、和處理多個異地數(shù)據(jù)庫中的數(shù)據(jù),執(zhí)行全局應用。執(zhí)行全局應用。4.C4.C/S/S(客戶機(客戶機/ /服務器)結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng)服務器)結(jié)構(gòu)的數(shù)據(jù)庫系統(tǒng) 該結(jié)構(gòu)中,把該結(jié)構(gòu)中,把DBMSDBMS功能和應用分開,網(wǎng)絡中某個(些)功能和應用分開,網(wǎng)絡中某個(些)結(jié)點上的計算機專門用于執(zhí)行結(jié)點上的計算機專門用于執(zhí)行DBMSDBMS功能,稱為數(shù)據(jù)庫服務功能,稱為數(shù)據(jù)庫服務器,簡稱器,簡稱服務器服務器。其他結(jié)點上的計算機安裝。其他結(jié)點上的計算機安裝DBMSDBMS的外圍應的外圍應用開發(fā)工具,用戶的應用系統(tǒng),稱為用開發(fā)工具,用戶的應用系統(tǒng),稱為客戶機客戶機。(1 1)兩層)兩層C/SC/S結(jié)構(gòu)結(jié)構(gòu)數(shù)據(jù)庫應用系
45、統(tǒng)數(shù)據(jù)庫應用系統(tǒng)客戶機客戶機Internet/Internet/IntranetIntranet數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)+ +數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫服務器數(shù)據(jù)庫服務器(2 2)三層)三層C/SC/S結(jié)構(gòu)結(jié)構(gòu)數(shù)據(jù)庫應用系統(tǒng)數(shù)據(jù)庫應用系統(tǒng)客戶機客戶機Internet/Internet/IntranetIntranetWebWeb服務軟件服務軟件WebWeb服務器服務器數(shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)+ +數(shù)據(jù)庫數(shù)據(jù)庫數(shù)據(jù)庫服務器數(shù)據(jù)庫服務器1.6.1 1.6.1 關(guān)系模式與關(guān)系數(shù)據(jù)庫關(guān)系模式與關(guān)系數(shù)據(jù)庫 在關(guān)系模型中,實體以及實體間的聯(lián)系都是用二維關(guān)在關(guān)系模型中,實體以及實體間的聯(lián)系都是用二維關(guān)系表來
46、表示。關(guān)系實質(zhì)上就是一個二維表,關(guān)系模式是這系表來表示。關(guān)系實質(zhì)上就是一個二維表,關(guān)系模式是這個表的結(jié)構(gòu),即它由哪些屬性構(gòu)成。在一個給定的現(xiàn)實世個表的結(jié)構(gòu),即它由哪些屬性構(gòu)成。在一個給定的現(xiàn)實世界領(lǐng)域中,相應于所有實體及實體之間的聯(lián)系的關(guān)系集合界領(lǐng)域中,相應于所有實體及實體之間的聯(lián)系的關(guān)系集合構(gòu)成一個關(guān)系數(shù)據(jù)庫。構(gòu)成一個關(guān)系數(shù)據(jù)庫。 關(guān)系數(shù)據(jù)庫也有型和值之分。關(guān)系數(shù)據(jù)庫的型也稱為關(guān)系數(shù)據(jù)庫也有型和值之分。關(guān)系數(shù)據(jù)庫的型也稱為關(guān)系數(shù)據(jù)庫模式,是對關(guān)系數(shù)據(jù)庫的描述,是關(guān)系模式的關(guān)系數(shù)據(jù)庫模式,是對關(guān)系數(shù)據(jù)庫的描述,是關(guān)系模式的集合。關(guān)系數(shù)據(jù)庫的值也稱為關(guān)系數(shù)據(jù)庫,是關(guān)系的集合。集合。關(guān)系數(shù)據(jù)庫的值
47、也稱為關(guān)系數(shù)據(jù)庫,是關(guān)系的集合。關(guān)系數(shù)據(jù)庫模式與關(guān)系數(shù)據(jù)庫通常統(tǒng)稱為關(guān)系數(shù)據(jù)庫。關(guān)系數(shù)據(jù)庫模式與關(guān)系數(shù)據(jù)庫通常統(tǒng)稱為關(guān)系數(shù)據(jù)庫。1.6.2 1.6.2 關(guān)系及其性質(zhì)關(guān)系及其性質(zhì)1.1.關(guān)系的基本術(shù)語關(guān)系的基本術(shù)語l 關(guān)系:關(guān)系:一個關(guān)系就是一張二維表,每個關(guān)系有一個關(guān)一個關(guān)系就是一張二維表,每個關(guān)系有一個關(guān)系名。在關(guān)系數(shù)據(jù)庫中,一個關(guān)系存儲為一個數(shù)據(jù)表。系名。在關(guān)系數(shù)據(jù)庫中,一個關(guān)系存儲為一個數(shù)據(jù)表。l 元組(或記錄)元組(或記錄):表中的一行即為一個元組。:表中的一行即為一個元組。l 屬性:屬性:表中的列稱為屬性,每一列有一個屬性名。列表中的列稱為屬性,每一列有一個屬性名。列中的元素為該屬性
48、的值,稱為分量。中的元素為該屬性的值,稱為分量。l 域:屬性的取值范圍,即不同元組對同一個屬性的值域:屬性的取值范圍,即不同元組對同一個屬性的值所限定的范圍。例如,邏輯型屬性只能從邏輯真(如所限定的范圍。例如,邏輯型屬性只能從邏輯真(如truetrue)或邏輯假(如)或邏輯假(如falsefalse)兩個值中取值。)兩個值中取值。l 關(guān)系模式:關(guān)系模式:對關(guān)系的描述,一般表示為:對關(guān)系的描述,一般表示為: 關(guān)系名(屬性名關(guān)系名(屬性名1 1,屬性名,屬性名2 2,屬性名,屬性名n n) 例如,一個學生關(guān)系模式可描述如下:例如,一個學生關(guān)系模式可描述如下: StudentStudent(學號,姓
49、名,性別,出生日期,班號)(學號,姓名,性別,出生日期,班號)l 候選碼(或候選關(guān)鍵字或鍵)候選碼(或候選關(guān)鍵字或鍵):若一個屬性或?qū)傩约希喝粢粋€屬性或?qū)傩约系闹的軌蛭ㄒ坏貥俗R每一個元組,即其值對不同的元組的值能夠唯一地標識每一個元組,即其值對不同的元組是不同的,這樣的一個屬性或?qū)傩约戏Q為候選碼。例是不同的,這樣的一個屬性或?qū)傩约戏Q為候選碼。例如,在學生關(guān)系模式中,如,在學生關(guān)系模式中,“學號學號”屬性就是一個候選碼;屬性就是一個候選碼;通常一個班沒有同姓名的學生,如果這樣,可將(通常一個班沒有同姓名的學生,如果這樣,可將(“班班號號”, ,“姓名姓名”)屬性集合作為一個候選碼。)屬性
50、集合作為一個候選碼。l 主碼(或主關(guān)鍵字)主碼(或主關(guān)鍵字):在一個關(guān)系中可能有多個候選碼,:在一個關(guān)系中可能有多個候選碼,從中選擇一個作為主碼。例如,在學生關(guān)系模式中,可從中選擇一個作為主碼。例如,在學生關(guān)系模式中,可以將以將“學號學號”候選碼作為主碼。候選碼作為主碼。l 主屬性:主屬性:包含在任何候選碼中諸屬性稱為主屬性,不包含包含在任何候選碼中諸屬性稱為主屬性,不包含在任何候選碼中諸屬性稱為非主屬性。例如,在學生關(guān)系在任何候選碼中諸屬性稱為非主屬性。例如,在學生關(guān)系模式中,模式中,“學號學號”一定是主屬性,而一定是主屬性,而“性別性別”是非主屬性。是非主屬性。l 外碼:外碼:如果一個關(guān)系
51、中的屬性或?qū)傩约喜⒎窃撽P(guān)系的候如果一個關(guān)系中的屬性或?qū)傩约喜⒎窃撽P(guān)系的候選碼,但它是另外一個關(guān)系的候選碼,則稱其為該關(guān)系的選碼,但它是另外一個關(guān)系的候選碼,則稱其為該關(guān)系的外碼。外碼提供了一種表示兩個關(guān)系聯(lián)系的方法。外碼。外碼提供了一種表示兩個關(guān)系聯(lián)系的方法。l 全碼:全碼:關(guān)系模型的整個屬性集合是這個關(guān)系模式的候選碼,關(guān)系模型的整個屬性集合是這個關(guān)系模式的候選碼,稱為全碼。稱為全碼。如圖如圖1.171.17所示給出了一個簡單的關(guān)系模型。所示給出了一個簡單的關(guān)系模型。2.2.關(guān)系的性質(zhì)關(guān)系的性質(zhì)l 列的同質(zhì)性:每一列中的分量是同一類型的數(shù)據(jù),來自列的同質(zhì)性:每一列中的分量是同一類型的數(shù)據(jù),
52、來自同一個域。同一個域。l 列名唯一性:每一列具有不同的屬性名,但不同列的值列名唯一性:每一列具有不同的屬性名,但不同列的值可以來自同一個域??梢詠碜酝粋€域。l 元組相異性:關(guān)系中任意兩個元組不能完全相同,至少元組相異性:關(guān)系中任意兩個元組不能完全相同,至少主碼值不同。主碼值不同。l 行序的無關(guān)性:行的次序可以互換。行序的無關(guān)性:行的次序可以互換。l 列序的無關(guān)性:列的次序可以互換。列序的無關(guān)性:列的次序可以互換。l 分量原子性:分量值是原子的,即每一個分量都必須是分量原子性:分量值是原子的,即每一個分量都必須是不可分的數(shù)據(jù)項。不可分的數(shù)據(jù)項。1.6.3 1.6.3 關(guān)系代數(shù)關(guān)系代數(shù)1.1.
53、傳統(tǒng)的集合運算傳統(tǒng)的集合運算 設關(guān)系設關(guān)系R R和和S S具有相同的具有相同的n n目(即兩個關(guān)系都有目(即兩個關(guān)系都有n n個屬個屬性),且相應的屬性取自同一個域。性),且相應的屬性取自同一個域。(1 1)并運算)并運算 并運算表示為:并運算表示為:R RS S= = t t | | t t R R t t S S 。其結(jié)果仍為。其結(jié)果仍為n n目關(guān)系,其數(shù)據(jù)由屬于目關(guān)系,其數(shù)據(jù)由屬于R R或?qū)儆诨驅(qū)儆赟 S的元組組成。其中,的元組組成。其中,t t表示表示R R或或S S中的元組。中的元組。(2 2)差運算)差運算 差運算表示為:差運算表示為:R R S S = = t t | | t t
54、 R R t t S S 。其結(jié)果關(guān)系仍。其結(jié)果關(guān)系仍為為n n目關(guān)系,其數(shù)據(jù)由屬于目關(guān)系,其數(shù)據(jù)由屬于R R而不屬于而不屬于S S的所有元組組成。的所有元組組成。(3 3)交運算)交運算 交運算表示為:交運算表示為:R R S S = = t t | | t t R R t t S S 。其結(jié)果關(guān)系仍。其結(jié)果關(guān)系仍為為n n目關(guān)系,其數(shù)據(jù)由既屬于目關(guān)系,其數(shù)據(jù)由既屬于R R同時又屬于同時又屬于S S的元組組成。的元組組成。(4 4)笛卡爾積)笛卡爾積 R R、S S可以為不同的關(guān)系,可以為不同的關(guān)系,R R、S S的笛卡爾積表示為:的笛卡爾積表示為:R RS S= = tr tr ts ts
55、 | | tr trR Rts tsS S 。 設設n n目和目和mm目的關(guān)系目的關(guān)系R R和和S S,它們的笛卡兒積是一個(,它們的笛卡兒積是一個(n n+ +mm)目的元組集合。元組的前目的元組集合。元組的前n n列是關(guān)系列是關(guān)系R R的一個元組,后的一個元組,后mm列是關(guān)列是關(guān)系系S S的一個元組。若的一個元組。若R R有有k k1 1個元組,個元組,S S有有k k2 2個元組,則關(guān)系個元組,則關(guān)系R R和和關(guān)系關(guān)系S S的笛卡兒積應當有的笛卡兒積應當有k k1 1k k2 2個元組。個元組。2. 2. 專門的關(guān)系運算專門的關(guān)系運算(1 1)選擇運算)選擇運算 從一個關(guān)系中選出滿足給定
56、條件的記錄的操作稱為選擇或從一個關(guān)系中選出滿足給定條件的記錄的操作稱為選擇或篩選。選擇是從行的角度進行的運算,選出滿足條件的那些記篩選。選擇是從行的角度進行的運算,選出滿足條件的那些記錄構(gòu)成原關(guān)系的一個子集。其表示如下:錄構(gòu)成原關(guān)系的一個子集。其表示如下: F F( (R R)=)=t t | | t tR RF F( (t t)=true)=true即由關(guān)系即由關(guān)系R R中滿足中滿足F F條件的元組組成,其中條件的元組組成,其中F F由屬性名(值)、由屬性名(值)、比較符、邏輯運算符組成,比較符、邏輯運算符組成,t t表示表示R R中的元組,中的元組,F(xiàn) F( (t t) )表示表示R R中
57、滿足中滿足F F條件的元組。條件的元組。(2 2)投影運算)投影運算 從一個關(guān)系中選出若干指定列的值的操作稱為投影。投從一個關(guān)系中選出若干指定列的值的操作稱為投影。投影是從列的角度進行的運算,所得到的列個數(shù)通常比原關(guān)系影是從列的角度進行的運算,所得到的列個數(shù)通常比原關(guān)系少,或者列的排列順序不同。其表示如下:少,或者列的排列順序不同。其表示如下: L L( (R R)= )= t t A A | | t tR R 即在即在R R中取屬性名列表中取屬性名列表L L中指定的列,并消除重復元組。中指定的列,并消除重復元組。(3 3)連接運算)連接運算 連接是把兩個關(guān)系中的記錄按一定的條件橫向結(jié)合,連接
58、是把兩個關(guān)系中的記錄按一定的條件橫向結(jié)合,生成一個新的關(guān)系。最常用的連接運算是自然連接,它是生成一個新的關(guān)系。最常用的連接運算是自然連接,它是利用兩個關(guān)系中共有的列,把該列值相等的記錄連接起來。利用兩個關(guān)系中共有的列,把該列值相等的記錄連接起來。其表示如下:其表示如下: 即從即從R RS S中選取中選取R R關(guān)系在關(guān)系在A A屬性組上的值與屬性組上的值與S S關(guān)系在關(guān)系在B B屬性組上值滿足屬性組上值滿足 條件的元組。根據(jù)條件的元組。根據(jù) 條件不同,連接運算條件不同,連接運算又分為多種類型,這里不再討論。又分為多種類型,這里不再討論。(4 4)除運算)除運算 給定關(guān)系給定關(guān)系R R(X X,Y
59、 Y)和)和S S(Y Y,Z Z),其中),其中X X、Y Y、Z Z為屬性為屬性組。組。R R中的中的Y Y與與S S中的中的Y Y可以有不同的屬性名,但必須出自相同可以有不同的屬性名,但必須出自相同的域集。的域集。R R與與S S的除運算得到一個新的關(guān)系的除運算得到一個新的關(guān)系P P(X X),),P P是是R R中滿中滿足下列條件的元組在足下列條件的元組在X X屬性列上的投影,元組在屬性列上的投影,元組在X X上的分量值上的分量值x x的象集的象集YxYx包含包含S S在在Y Y上的投影,即:上的投影,即: R RS S=trtr X X | | trtr R R Y Y( (S S)
60、 ) YxYx 其中的其中的YxYx為為x x在在R R中的象集,中的象集,x x= =trtr X X 。1.6.4 SQL1.6.4 SQL語言簡介語言簡介 SQL SQL語言是一種關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)化查詢語言,集數(shù)據(jù)定語言是一種關(guān)系數(shù)據(jù)庫的結(jié)構(gòu)化查詢語言,集數(shù)據(jù)定義、操縱和控制功能于一體,語言風格統(tǒng)一。義、操縱和控制功能于一體,語言風格統(tǒng)一。 數(shù)據(jù)庫設計人員可以直接使用數(shù)據(jù)庫設計人員可以直接使用SQLSQL語言定義關(guān)系模式、錄語言定義關(guān)系模式、錄入數(shù)據(jù)以建立數(shù)據(jù)庫、查詢、更新、維護、數(shù)據(jù)庫重構(gòu)、數(shù)入數(shù)據(jù)以建立數(shù)據(jù)庫、查詢、更新、維護、數(shù)據(jù)庫重構(gòu)、數(shù)據(jù)庫安全性控制等一系列操作。據(jù)庫安全性控制
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度商業(yè)保理合同樣本匯編
- 2025年度城市軌道交通建設運營合同示范文本39199
- 2025年會所裝修工程材料質(zhì)量保證合同
- 2025年光伏電站儲能系統(tǒng)優(yōu)化設計與集成合同
- 2025年度戶外運動裝備柜子銷售與售后服務合同范本
- 2025年度光伏發(fā)電項目施工全包合同正本
- 2025年度智慧城市公共安全系統(tǒng)招投標合同管理規(guī)范
- 2025年度普惠金融借款合同模板創(chuàng)新示范
- 2025年基礎(chǔ)教育學校教務主任崗位聘用合同范本
- 2025年度建筑消防設施檢測分包合同
- (康德一診)重慶市2025屆高三高三第一次聯(lián)合診斷檢測 英語試卷(含答案詳解)
- 2025年福建泉州文旅集團招聘24人高頻重點提升(共500題)附帶答案詳解
- 建筑行業(yè)砂石物資運輸方案
- 腫瘤全程管理
- 融資報告范文模板
- 桃李面包盈利能力探析案例11000字
- GB/Z 30966.71-2024風能發(fā)電系統(tǒng)風力發(fā)電場監(jiān)控系統(tǒng)通信第71部分:配置描述語言
- 污泥處置合作合同模板
- 腦梗死的護理查房
- 2025高考數(shù)學專項復習:概率與統(tǒng)計的綜合應用(十八大題型)含答案
- 2024-2030年中國紫蘇市場深度局勢分析及未來5發(fā)展趨勢報告
評論
0/150
提交評論