第1章-數(shù)據庫基礎知識課件_第1頁
第1章-數(shù)據庫基礎知識課件_第2頁
第1章-數(shù)據庫基礎知識課件_第3頁
第1章-數(shù)據庫基礎知識課件_第4頁
第1章-數(shù)據庫基礎知識課件_第5頁
已閱讀5頁,還剩133頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識2第1章數(shù)據庫基礎知識本章要點:計算機數(shù)據管理技術。數(shù)據庫系統(tǒng)。數(shù)據模型。關系數(shù)據庫。數(shù)據庫的設計方法。第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識第1章數(shù)1第1章數(shù)據庫基礎知識本章要點:計算機數(shù)據管理技術。數(shù)據庫系統(tǒng)。數(shù)據模型。關系數(shù)據庫。數(shù)據庫的設計方法。2第1章數(shù)據庫基礎知識本章要點:21.1.1數(shù)據與數(shù)據處理1.數(shù)據和信息數(shù)據是人們用于記錄事物情況的物理符號。信息是數(shù)據中所包含的意義。信息是經過加工處理并對人類社會實踐和生產活動產生決策影響的數(shù)據。數(shù)據是用來表示信息的,但并非任何數(shù)據都能表示信息;信息是加工處理后的數(shù)據,是數(shù)據所表達的內容。信息不隨表示它的數(shù)據形式而改變,它是反映客觀現(xiàn)實世界的知識;而數(shù)據則具有任意性,用不同的數(shù)據形式可以表示同樣的信息。1.1計算機數(shù)據管理技術31.1.1數(shù)據與數(shù)據處理1.1計算機數(shù)據管理技術32.數(shù)據處理數(shù)據處理是指將數(shù)據轉換成信息的過程,它包括對數(shù)據的收集、存儲、分類、計算、加工、檢索和傳輸?shù)纫幌盗谢顒?。計算機是一個具有程序執(zhí)行能力的數(shù)據處理工具,如圖所示。42.數(shù)據處理41.1.2計算機數(shù)據管理技術的發(fā)展1.人工管理階段20世紀50年代中期以前,數(shù)據管理是以人工管理方式進行的。數(shù)據管理的特點如下。(1)數(shù)據不保存(2)由應用程序管理數(shù)據(3)數(shù)據有冗余,無法實現(xiàn)共享(4)數(shù)據對應用程序不具有獨立性51.1.2計算機數(shù)據管理技術的發(fā)展52.文件管理階段20世紀50年代后期至60年代后期,計算機開始大量用于數(shù)據管理。數(shù)據處理應用程序利用操作系統(tǒng)的文件管理功能,將相關數(shù)據按一定的規(guī)則構成文件,通過文件系統(tǒng)對文件中的數(shù)據進行存取和管理,實現(xiàn)數(shù)據的文件管理方式。其特點可概括為如下兩點。數(shù)據可以長期保存數(shù)據對應用程序有一定的獨立性62.文件管理階段6當數(shù)據量增加、使用數(shù)據的用戶越來越多時,文件管理便不能適應更有效地使用數(shù)據的需要了,其癥結表現(xiàn)在3個方面。(1)數(shù)據的共享性差、冗余度大,容易造成數(shù)據不一致(2)數(shù)據獨立性差(3)數(shù)據之間缺乏有機的聯(lián)系,缺乏對數(shù)據的統(tǒng)一控制和管理7當數(shù)據量增加、使用數(shù)據的用戶越來越多時,文件管理便不能適應更3.數(shù)據庫管理階段20世紀60年代后期,數(shù)據管理技術在文件管理的基礎上發(fā)展到數(shù)據庫管理。數(shù)據庫(Database,DB)是按一定的組織方式存儲起來的、相互關聯(lián)的數(shù)據集合。在數(shù)據庫管理階段,由一種叫做數(shù)據庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)的系統(tǒng)軟件來對數(shù)據進行統(tǒng)一的控制和管理。在應用程序和數(shù)據庫之間保持較高的獨立性,數(shù)據具有完整性、一致性和安全性高等特點,并且具有充分的共享性,有效地減少了數(shù)據冗余。83.數(shù)據庫管理階段84.新型數(shù)據管理技術數(shù)據庫技術的發(fā)展先后經歷了層次數(shù)據庫、網狀數(shù)據庫和關系數(shù)據庫。層次數(shù)據庫和網狀數(shù)據庫可以看作第1代數(shù)據庫系統(tǒng),關系數(shù)據庫可以看作第2代數(shù)據庫系統(tǒng)。實際應用中涌現(xiàn)出的許多問題,促使數(shù)據庫技術不斷向前發(fā)展,出現(xiàn)了許多不同類型的新型數(shù)據管理技術。(1)分布式數(shù)據庫系統(tǒng)(2)面向對象數(shù)據庫系統(tǒng)(3)多媒體數(shù)據庫系統(tǒng)(4)數(shù)據倉庫技術(5)大數(shù)據技術94.新型數(shù)據管理技術91.2.1數(shù)據庫系統(tǒng)的組成數(shù)據庫系統(tǒng)是由計算機系統(tǒng)、數(shù)據庫及其描述機構、數(shù)據庫管理系統(tǒng)和有關人員組成的具有高度組織性的整體。1.計算機硬件計算機硬件是數(shù)據庫系統(tǒng)的物質基礎,是存儲數(shù)據庫及運行數(shù)據庫管理系統(tǒng)的硬件資源,主要包括計算機主機、存儲設備、輸入輸出設備及計算機網絡環(huán)境。1.2數(shù)據庫系統(tǒng)101.2.1數(shù)據庫系統(tǒng)的組成1.2數(shù)據庫系統(tǒng)102.計算機軟件數(shù)據庫系統(tǒng)中的軟件包括操作系統(tǒng)、數(shù)據庫管理系統(tǒng)及數(shù)據庫應用系統(tǒng)等。數(shù)據庫管理系統(tǒng)是數(shù)據庫系統(tǒng)的核心軟件之一,它提供數(shù)據定義、數(shù)據操縱、數(shù)據庫管理、數(shù)據庫建立和維護及通信等功能。數(shù)據庫管理系統(tǒng)必須運行在相應的系統(tǒng)平臺上,有操作系統(tǒng)和相關系統(tǒng)軟件的支持。數(shù)據庫應用系統(tǒng)是指系統(tǒng)開發(fā)人員利用數(shù)據庫系統(tǒng)資源開發(fā)出來的、面向某一類實際應用的應用軟件系統(tǒng)。112.計算機軟件113.數(shù)據庫數(shù)據庫是指數(shù)據庫系統(tǒng)中按照一定的方式組織的、存儲在外部存儲設備上的、能為多個用戶共享的、與應用程序相互獨立的相關數(shù)據集合。它不僅包括描述事物的數(shù)據本身,而且還包括相關事物之間的聯(lián)系。4.數(shù)據庫系統(tǒng)的有關人員數(shù)據庫系統(tǒng)的有關人員主要有3類:最終用戶、數(shù)據庫應用系統(tǒng)開發(fā)人員和數(shù)據庫管理員(DatabaseAdministrator,DBA)。123.數(shù)據庫121.2.2數(shù)據庫的結構體系數(shù)據庫領域公認的標準結構是三級模式結構及二級映射,三級模式包括外模式、概念模式和內模式,二級映射則分別是概念模式/內模式的映射及外模式/概念模式的映射。這種三級模式與二級映射構成了數(shù)據庫的結構體系,如圖所示。131.2.2數(shù)據庫的結構體系1314141.數(shù)據庫的三級模式(1)概念模式概念模式又稱邏輯模式,或簡稱為模式,對應于概念級。它是由數(shù)據庫設計者綜合所有用戶的數(shù)據,按照統(tǒng)一的觀點構造的全局邏輯結構,是對數(shù)據庫中全部數(shù)據的邏輯結構和特征的總體描述,是所有用戶的公共數(shù)據視圖(全局視圖)。151.數(shù)據庫的三級模式15(2)外模式外模式又稱子模式或用戶模式,對應于用戶級。它是某個或某幾個用戶所看到的數(shù)據庫的數(shù)據視圖,是與某一應用有關的數(shù)據的邏輯表示。外模式是從概念模式導出的一個子集,包含概念模式中允許特定用戶使用的那部分數(shù)據。16(2)外模式16(3)內模式內模式又稱存儲模式或物理模式,對應于物理級。它是數(shù)據庫中全體數(shù)據的內部表示或底層描述,是數(shù)據庫最低一級的邏輯描述,它描述了數(shù)據在存儲介質上的存儲方式和物理結構,對應著實際存儲在外存儲介質上的數(shù)據庫。17(3)內模式172.三級模式間的二級映射為了實現(xiàn)這3個抽象級別的聯(lián)系和轉換,數(shù)據庫管理系統(tǒng)在三級模式之間提供了二級映射,正是這二級映射保證了數(shù)據庫中的數(shù)據具有較高的物理獨立性和邏輯獨立性。(1)概念模式/內模式的映射(2)外模式/概念模式的映射182.三級模式間的二級映射181.2.3數(shù)據庫系統(tǒng)的特點1.數(shù)據結構化在數(shù)據庫系統(tǒng)中,每一個數(shù)據庫都是為某一應用領域服務的,這些應用彼此之間都有著密切的聯(lián)系。因此,在數(shù)據庫系統(tǒng)中不僅要考慮某個應用的數(shù)據結構,還要考慮整個組織(多個應用)的數(shù)據結構。這種數(shù)據組織方式使數(shù)據結構化了,這就要求在描述數(shù)據時不僅要描述數(shù)據本身,還要描述數(shù)據之間的聯(lián)系。191.2.3數(shù)據庫系統(tǒng)的特點192.數(shù)據共享性高、冗余度低數(shù)據共享是指多個用戶或應用程序可以訪問同一個數(shù)據庫中的數(shù)據,而且數(shù)據庫管理系統(tǒng)提供并發(fā)和協(xié)調機制,保證在多個應用程序同時訪問、存取和操作數(shù)據庫數(shù)據時,不產生任何沖突,從而保證數(shù)據不遭到破壞。數(shù)據冗余既浪費存儲空間,又容易產生數(shù)據不一致等問題。202.數(shù)據共享性高、冗余度低203.具有較高的數(shù)據獨立性數(shù)據獨立性是指應用程序與數(shù)據庫的數(shù)據結構之間相互獨立。在數(shù)據庫系統(tǒng)中,因為采用了數(shù)據庫的三級模式結構,保證了數(shù)據庫中數(shù)據的獨立性。在數(shù)據存儲結構改變時,不影響數(shù)據的全局邏輯結構,這樣保證了數(shù)據的物理獨立性。在全局邏輯結構改變時,不影響用戶的局部邏輯結構及應用程序,這樣就保證了數(shù)據的邏輯獨立性。213.具有較高的數(shù)據獨立性214.有統(tǒng)一的數(shù)據控制功能數(shù)據庫管理系統(tǒng)提供了一套有效的數(shù)據控制手段,包括數(shù)據安全性控制、數(shù)據完整性控制、數(shù)據庫的并發(fā)控制和數(shù)據庫的恢復等,增強了多用戶環(huán)境下數(shù)據的安全性和一致性保護。224.有統(tǒng)一的數(shù)據控制功能221.3.1數(shù)據模型的組成要素數(shù)據結構、數(shù)據操作及數(shù)據的完整性約束也被稱為數(shù)據模型的3個組成要素。1.數(shù)據結構數(shù)據結構研究數(shù)據之間的組織形式(數(shù)據的邏輯結構)、數(shù)據的存儲形式(數(shù)據的物理結構)及數(shù)據對象的類型等。存儲在數(shù)據庫中的對象類型的集合是數(shù)據庫的組成部分。在數(shù)據庫系統(tǒng)中,通常按照其數(shù)據結構的類型來命名數(shù)據模型。例如,層次結構、網狀結構和關系結構的數(shù)據模型分別命名為層次模型、網狀模型和關系模型。1.3數(shù)據模型231.3.1數(shù)據模型的組成要素1.3數(shù)據模型232.數(shù)據操作數(shù)據操作用于描述系統(tǒng)的動態(tài)特性,是指對數(shù)據庫中的各種數(shù)據所允許執(zhí)行的操作的集合,包括操作及有關的操作規(guī)則。數(shù)據庫主要有查詢和更新(包括插入、刪除和修改等)兩大類操作。數(shù)據模型必須定義這些操作的確切含義、操作符號、操作規(guī)則(如優(yōu)先級)及實現(xiàn)操作的語言。242.數(shù)據操作243.數(shù)據的完整性約束數(shù)據的完整性約束是一組完整性規(guī)則的集合。數(shù)據模型應該反映和規(guī)定數(shù)據必須遵守的、基本的、通用的完整性約束。此外,數(shù)據模型還應該提供定義完整性約束條件的機制,以反映具體所涉及的數(shù)據必須遵守的、特定的語義約束條件。253.數(shù)據的完整性約束251.3.2數(shù)據抽象的過程數(shù)據模型是對現(xiàn)實世界進行抽象和轉換的結果,這一過程如圖所示。261.3.2數(shù)據抽象的過程261.對現(xiàn)實世界的抽象計算機處理的對象是現(xiàn)實世界中的客觀事物,在對其實施處理的過程中,首先應了解和熟悉現(xiàn)實世界,從對現(xiàn)實世界的調查和觀察中抽象出大量描述客觀事物的事實,再對這些事實進行整理、分類和規(guī)范,進而將規(guī)范化的事實數(shù)據化,最終實現(xiàn)由數(shù)據庫系統(tǒng)存儲和處理。271.對現(xiàn)實世界的抽象272.觀念世界中的概念模型概念模型的特征是按用戶需求觀點對數(shù)據進行建模,表達了數(shù)據的全局邏輯結構,是系統(tǒng)用戶對整個應用項目涉及的數(shù)據的全面描述。概念模型主要用于數(shù)據庫設計,它獨立于實現(xiàn)時的數(shù)據庫管理系統(tǒng)。概念模型的表示方法很多,目前較常用的是E-R模型。282.觀念世界中的概念模型283.機器世界中的邏輯模型和物理模型在選定數(shù)據庫管理系統(tǒng)后,就要將E-R圖表示的概念模型轉換為具體的數(shù)據庫管理系統(tǒng)支持的邏輯模型。通常,也把數(shù)據的邏輯模型直接稱為數(shù)據模型。數(shù)據庫系統(tǒng)中主要的邏輯模型有層次模型、網狀模型和關系模型。物理模型是對數(shù)據最底層的抽象,用以描述數(shù)據在物理存儲介質上的組織結構,與具體的數(shù)據庫管理系統(tǒng)、操作系統(tǒng)和硬件有關。293.機器世界中的邏輯模型和物理模型291.3.3概念模型1.實體與實體集實體(Entity)是現(xiàn)實世界中任何可以相互區(qū)分和識別的事物,它可以是能觸及的客觀對象,還可以是抽象的事件。性質相同的同類實體的集合稱為實體集(EntitySet)。2.屬性每個實體都具有一定的特征或性質,這樣才能區(qū)分一個個實體。實體的特征稱為屬性(Attribute),一個實體可用若干屬性來刻畫。能唯一標識實體的屬性或屬性集稱為實體標識符。301.3.3概念模型303.類型與值屬性和實體都有類型(Type)和值(Value)之分。屬性類型就是屬性名及其取值類型,屬性值就是屬性所取的具體值。屬性類型是個變量,屬性值是變量所取的值,而值域是變量的取值范圍。實體類型就是實體的結構描述,通常是實體名和屬性名的集合。具有相同屬性的實體,有相同的實體類型。實體值是一個具體的實體,是屬性值的集合。313.類型與值314.實體間的聯(lián)系(1)一對一聯(lián)系如果對于實體集A中的每一個實體,實體集B中至多只有一個實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系,記為1∶1。(2)一對多聯(lián)系如果對于實體集A中的每一個實體,實體集B中可以有多個實體與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系,記為1∶n。(3)多對多聯(lián)系如果對于實體集A中的每一個實體,實體集B中可以有多個實體與之聯(lián)系,而對于實體集B中的每一個實體,實體集A中也可以有多個實體與之聯(lián)系,則稱實體集A與實體集B之間有多對多聯(lián)系,記為m∶n。324.實體間的聯(lián)系325.E-R圖E-R圖是用一種直觀的圖形方式建立現(xiàn)實世界中實體及其聯(lián)系模型的工具,也是數(shù)據庫設計的一種基本工具。E-R圖用矩形框表示現(xiàn)實世界中的實體,用菱形框表示實體間的聯(lián)系,用橢圓形框表示實體和聯(lián)系的屬性。下圖用來表示讀者實體和圖書實體的多對多聯(lián)系模型。335.E-R圖3334341.3.4邏輯模型1.層次模型層次模型(HierarchicalModel)用樹形結構來表示實體及其之間的聯(lián)系。根據樹形結構的特點,建立數(shù)據的層次模型需要滿足如下兩個條件。①有一個結點沒有父結點,這個結點即根結點。②其他結點有且僅有一個父結點。351.3.4邏輯模型352.網狀模型網狀模型(NetworkModel)用以實體類型為結點的有向圖來表示各實體及其之間的聯(lián)系。其特點如下。①可以有一個以上的結點無父結點。②至少有一個結點有多于一個的父結點。362.網狀模型363.關系模型關系模型(RelationalModel)用二維表格來表示實體及其相互之間的聯(lián)系。在關系模型中,把實體集看成一個二維表,每一個二維表稱為一個關系。每個關系均有一個名字,稱為關系名。教師關系373.關系模型教師關系371.4.1關系模型的基本概念1.關系通常將一個沒有重復行、重復列,并且每個行列的交叉點只有一個基本數(shù)據的二維表格看成一個關系。二維表格包括表頭和表中的內容,相應地,關系包括關系模式和記錄的值,表包括表結構(記錄類型)和表的記錄,而滿足一定條件的規(guī)范化關系的集合,就構成了關系模型。1.4關系數(shù)據庫381.4.1關系模型的基本概念1.4關系數(shù)據庫38關系是一種規(guī)范化了的二維表格。在關系模型中,對關系作了種種規(guī)范性限制,關系具有以下6條性質。①關系必須規(guī)范化,每一個屬性都必須是不可再分的數(shù)據項。②每一列中的分量是同一類型的數(shù)據,來自同一個域。③在同一關系中不允許出現(xiàn)相同的屬性名。④關系中不允許有完全相同的元組。⑤在同一關系中元組的次序無關緊要。⑥在同一關系中屬性的次序無關緊要。39關系是一種規(guī)范化了的二維表格。在關系模型中,對關系作了種種規(guī)2.元組二維表格的每一行在關系中稱為元組(Tuple),相當于表的一條記錄(Record)。二維表格的一行描述了現(xiàn)實世界中的一個實體。在關系數(shù)據庫中,行是不能重復的,即不允許兩行的全部元素完全對應相同。402.元組403.屬性二維表格的每一列在關系中稱為屬性(Attribute),相當于記錄中的一個字段(Field)或數(shù)據項。每個屬性有一個屬性名,一個屬性在其每個元組上的值稱為屬性值,因此,一個屬性包括多個屬性值,只有在指定元組的情況下,屬性值才是確定的。同時,每個屬性有一定的取值范圍,稱為該屬性的值域。同樣,在關系數(shù)據庫中,列是不能重復的,即關系的屬性不允許重復。屬性必須是不可再分的,即屬性是一個基本的數(shù)據項,不能是幾個數(shù)據的組合項。413.屬性414.關鍵字關系中能唯一區(qū)分、確定不同元組的單個屬性或屬性組合,稱為該關系的一個關鍵字。關鍵字又稱為鍵或碼(Key)。單個屬性組成的關鍵字稱為單關鍵字,多個屬性組合的關鍵字稱為組合關鍵字。需要強調的是,關鍵字的屬性值不能取“空值”,因為“空值”無法唯一地區(qū)分、確定元組。所謂“空值”,就是“不知道”或“不確定”的值。關系中能夠作為關鍵字的屬性或屬性組合可能不是唯一的。凡在關系中能夠唯一區(qū)分、確定不同元組的屬性或屬性組合,稱為候選關鍵字(CandidateKey)。在候選關鍵字中選定一個作為關鍵字,稱為該關系的主關鍵字或主鍵(PrimaryKey)。關系中主關鍵字是唯一的。424.關鍵字425.外部關鍵字如果關系中某個屬性或屬性組合是另一個關系的關鍵字,則稱這樣的屬性或屬性組合為本關系的外部關鍵字或外鍵(ForeignKey)。在關系數(shù)據庫中,用外部關鍵字表示兩個表之間的聯(lián)系。435.外部關鍵字436.關系模式關系模型是由若干個關系組成的,關系用關系模式(RelationalSchema)來描述。關系模式就相當于前面提到的實體類型,它代表了關系的結構,也就是二維表格的框架(表頭)。對于教師關系可以表示為:教師(編號,姓名,性別,出生日期,職稱,基本工資,研究方向)446.關系模式441.4.2關系運算利用集合論的觀點,關系是元組的集合,每個元組包含的屬性數(shù)目相同,其中屬性的個數(shù)稱為元組的維數(shù)。將關系與二維表進行比較可以看出兩者存在簡單的對應關系,關系模式對應一個二維表的表頭,而關系的一個元組就是二維表的一行。例如,職工關系R={(E1,張一,女),(E2,王二,男),(E3,李三,男),(E3,成四,女)},相應的二維表格表示形式如表所示。職工關系R451.4.2關系運算職工關系R451.傳統(tǒng)的關系運算(1)并(Union)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的并也是一個n元關系,記作R∪S。R∪S包含了所有分屬于R和S或同屬于R和S的元組。因為集合中不允許有重復元素,因此,同時屬于R和S的元組在R∪S中只出現(xiàn)一次。(2)差(Difference)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的差也是一個n元關系,記作R-S。R-S包含了所有屬于R但不屬于S的元組。461.傳統(tǒng)的關系運算46(3)交(Intersection)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的交也是一個n元關系,記作R∩S。R∩S包含了所有同屬于R和S的元組。實際上,交運算可以通過差運算的組合來實現(xiàn),如A∩B=A-(A-B)或B-(B-A)。4747(4)廣義笛卡爾積設R是一個包含m個元組的j元關系,S是一個包含n個元組的k元關系,則R和S的廣義笛卡爾積是一個包含m×n個元組的j+k元關系,記作R×S,并定義R×S={(r1,r2,…,rj,s1,s2,…,sk)|(r1,r2,…,rj)∈R且{s1,s2,…,sk}∈S}即R×S的每個元組的前j個分量是R中的一個元組,而后k個分量是S中的一個元組。48(4)廣義笛卡爾積48例1-1設R={(a1,b1,c1),(a1,b2,c2),(a2,b2,c1)},S={(a1,b2,c2),(a1,b3,c2),(a2,b2,c1)},求R∪S,R-S,R∩S,R×S。根據運算規(guī)則,有如下結果。R∪S={(a1,b1,c1),(a1,b2,c2),(a2,b2,c1),(a1,b3,c2)}R-S={(a1,b1,c1)}R∩S={(a1,b2,c2),(a2,b2,c1)}R×S={(a1,b1,c1,a1,b2,c2),(a1,b1,c1,a1,b3,c2),(a1,b1,c1,a2,b2,c1),(a1,b2,c2,a1,b2,c2),(a1,b2,c2,a1,b3,c2),(a1,b2,c2,a2,b2,c1),(a2,b2,c1,a1,b2,c2),(a2,b2,c1,a1,b3,c2),(a2,b2,c1,a2,b2,c1)}R×S是一個包含9個元組的6元關系。49例1-1設R={(a1,b1,c1),(a1,b2,c22.專門的關系運算(1)選擇(Selection)設R={(a1,a2,…,an)}是一個n元關系,F(xiàn)是關于(a1,a2,…,an)的一個條件,R中所有滿足F條件的元組組成的子關系稱為R的一個選擇,記作σF(R),并定義σF(R)={(a1,a2,…,an)|(a1,a2,…,an)∈R且(a1,a2,…,an)滿足條件F}簡言之,對R關系按一定規(guī)則篩選一個子集的過程就是對R施加了一次選擇運算。502.專門的關系運算50(2)投影(Projection)設R=R(A1,A2,…,An)是一個n元關系,{i1,i2,…,im}是{1,2,…,n}的一個子集,并且i1<i2<…<im,定義即π(R)是R中只保留屬性的新的關系,稱π(R)是R在屬性上的一個投影,通常記作通俗地講,關系R上的投影是從R中選擇出若干屬性列組成新的關系。51(2)投影(Projection)即π(R)是R中只保留屬性(3)連接(Join)連接是從兩個關系的笛卡爾積中選取屬性間滿足一定條件的元組,記作其中A和B分別為R和S上維數(shù)相等且可比的屬性組,θ是比較運算符。連接運算從R和S的笛卡爾積R×S中選取(R關系)在A屬性組上的值與(S關系)在B屬性組上值滿足比較關系θ的元組。RS52(3)連接(Join)其中A和B分別為R和S上維數(shù)相等且可比連接運算中有兩種最為重要也最為常用的連接,一種是等值連接,另一種是自然連接。θ為“=”的連接運算稱為等值連接,它是從關系R與S的笛卡爾積中選取A和B屬性值相等的那些元組。自然連接是一種特殊的等值連接,它要求在結果中把重復的屬性去掉。一般的連接操作是從行的角度進行運算,但自然連接還需要取消重復列,所以是同時從行和列的角度進行運算。53連接運算中有兩種最為重要也最為常用的連接,一種是等值連接,另例1-2一個關系數(shù)據庫由職工關系E和工資關系W組成,關系模式如下。E(編號,姓名,性別)W(編號,基本工資,標準津貼,業(yè)績津貼)寫出實現(xiàn)以下功能的關系運算表達式。①查詢全體男職工的信息。②查詢全體男職工的編號和姓名。③查詢全體職工的基本工資、標準津貼和業(yè)績津貼。54例1-2一個關系數(shù)據庫由職工關系E和工資關系W組成,關系1.4.3關系的完整性約束在關系模型中,數(shù)據完整性包括實體完整性(EntityIntegrity)、參照完整性(ReferentialIntegrity)及用戶自定義完整性(UserdefinedIntegrity)3種。1.實體完整性現(xiàn)實世界中的實體是可區(qū)分的,即它們具有某種唯一性標識。相應地,關系模型中以主關鍵字作為唯一性標識。實體完整性就是指關系的主屬性不能取“空值”,并且不允許兩個元組的關鍵字值相同。也就是一個二維表中沒有兩個完全相同的行,因此實體完整性也稱為行完整性。551.4.3關系的完整性約束552.參照完整性設F是關系R的一個或一組屬性,但不是關系R的關鍵字,如果F與關系S的主關鍵字Ks相對應,則稱F是關系R的外部關鍵字,并稱關系R為參照關系(ReferencingRelation),關系S為被參照關系(ReferencedRelation)或目標關系(TargetRelation)。參照完整性規(guī)則就是定義外部關鍵字與主關鍵字之間的引用規(guī)則,即對于R中每個元組在F上的值必須取“空值”或等于S中某個元組的主關鍵字值。562.參照完整性563.用戶自定義完整性實體完整性和參照完整性適用于任何關系數(shù)據庫系統(tǒng)。除此之外,不同的關系數(shù)據庫系統(tǒng)根據其應用環(huán)境的不同,往往還需要一些特殊的約束條件,用戶自定義完整性就是針對某一具體關系數(shù)據庫的約束條件,它反映某一具體應用所涉及的數(shù)據必須滿足的語義要求,如規(guī)定關系中某一屬性的取值范圍。573.用戶自定義完整性571.5.1數(shù)據庫設計的基本步驟考慮數(shù)據庫及其應用系統(tǒng)開發(fā)全過程,可以將數(shù)據庫設計分為6個階段:需求分析、概念設計、邏輯設計、物理設計、數(shù)據庫實施、數(shù)據庫運行和維護。1.需求分析階段需求分析的任務是通過詳細調查現(xiàn)實世界要處理的對象(組織、部門、行業(yè)等),充分了解用戶單位目前的工作狀況,明確用戶的各種需求,然后在此基礎上確定新系統(tǒng)的功能。1.5數(shù)據庫的設計方法581.5.1數(shù)據庫設計的基本步驟1.5數(shù)據庫的設計方法2.概念設計階段將需求分析得到的用戶需求抽象為信息結構即概念模型的過程就是概念設計,它是整個數(shù)據庫設計的關鍵。在需求分析階段所得到的應用需求應該首先抽象為概念模型,以便更好、更準確地用某一數(shù)據庫管理系統(tǒng)實現(xiàn)這些需求。概念模型是各種邏輯模型的共同基礎,它比邏輯模型更獨立于機器、更抽象,從而更加穩(wěn)定。描述概念模型的有力工具是E-R圖。592.概念設計階段593.邏輯設計階段數(shù)據庫邏輯設計是將概念模型轉換為邏輯模型,也就是被某個數(shù)據庫管理系統(tǒng)所支持的數(shù)據模型,并對轉換結果進行規(guī)范化處理。關系數(shù)據庫的邏輯結構由一組關系模式組成,因而,從概念模型結構到關系數(shù)據庫邏輯結構的轉換就是將E-R圖轉化為關系模型的過程。603.邏輯設計階段604.物理設計階段數(shù)據庫在物理設備上的存儲結構與存取方法稱為數(shù)據庫的物理結構,它依賴于給定的計算機系統(tǒng)。為一個給定的邏輯模型選取一個最適合應用要求的物理結構的過程,就是數(shù)據庫的物理設計。614.物理設計階段615.數(shù)據庫實施階段完成數(shù)據庫的物理設計之后,就要用數(shù)據庫管理系統(tǒng)提供的數(shù)據定義語言和其他實用程序將數(shù)據庫邏輯設計和物理設計結果嚴格地描述出來,成為數(shù)據庫管理系統(tǒng)可以接收的源代碼,再經過調試產生目標代碼,然后就可以組織數(shù)據入庫了,這就是數(shù)據庫實施階段。數(shù)據庫實施階段包括兩項重要的工作,一是數(shù)據的載入,二是應用程序的編碼和調試。625.數(shù)據庫實施階段626.數(shù)據庫運行和維護階段數(shù)據庫系統(tǒng)經過試運行合格后,數(shù)據庫開發(fā)工作就基本完成,即可投入正式運行了。在數(shù)據庫系統(tǒng)的運行過程中,對數(shù)據庫設計進行評價、調整、修改等維護工作是一個長期的任務,也是設計工作的繼續(xù)和提高。在數(shù)據庫運行階段,對數(shù)據庫經常性的維護工作主要是由數(shù)據庫管理員完成的,它包括數(shù)據庫的轉儲和恢復、數(shù)據庫的安全性與完整性控制、數(shù)據庫性能的分析和改造、數(shù)據庫的重組織與重構造。636.數(shù)據庫運行和維護階段631.5.2概念模型到關系模型的轉化(1)1∶1聯(lián)系的轉換若實體間的聯(lián)系是1∶1聯(lián)系,只要在兩個實體類型轉換成的兩個關系模式中的任意一個關系模式中增加另一關系模式的關鍵屬性和聯(lián)系的屬性即可。641.5.2概念模型到關系模型的轉化64(2)1∶n聯(lián)系的轉化若實體間的聯(lián)系是1∶n聯(lián)系,則需要在n方實體的關系模式中增加1方實體類型的關鍵屬性和聯(lián)系的屬性,1方的關鍵屬性作為外部關鍵屬性處理。65(2)1∶n聯(lián)系的轉化65(3)m∶n聯(lián)系的轉化若實體間的聯(lián)系是m∶n聯(lián)系,則除對兩個實體分別進行轉換外,還要為聯(lián)系類型單獨建立一個關系模式,其屬性為兩方實體類型的關鍵屬性加上聯(lián)系的屬性,其關鍵屬性是兩方實體關鍵屬性的組合。66(3)m∶n聯(lián)系的轉化661.5.3數(shù)據庫設計實例某大學教學管理系統(tǒng)的E-R圖如圖所示。671.5.3數(shù)據庫設計實例67將5個實體及2個m∶n聯(lián)系轉化成7個關系模式,具體結構如下。學生(學號,姓名,性別,出生日期,專業(yè)名稱)課程(課程編號,課程名稱,學分)選課(學號,課程編號,平時成績,考試成績,總評成績)教師(教師編號,姓名,性別,職稱,學院名稱)授課(教師編號,課程編號,評價等級)學院(學院名稱,網址,教師人數(shù))專業(yè)(專業(yè)名稱,成立年份,專業(yè)簡介)68將5個實體及2個m∶n聯(lián)系轉化成7個關系模式,具體結構如下。謝謝!謝謝!69第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識2第1章數(shù)據庫基礎知識本章要點:計算機數(shù)據管理技術。數(shù)據庫系統(tǒng)。數(shù)據模型。關系數(shù)據庫。數(shù)據庫的設計方法。第1章數(shù)據庫基礎知識第1章數(shù)據庫基礎知識第1章數(shù)70第1章數(shù)據庫基礎知識本章要點:計算機數(shù)據管理技術。數(shù)據庫系統(tǒng)。數(shù)據模型。關系數(shù)據庫。數(shù)據庫的設計方法。71第1章數(shù)據庫基礎知識本章要點:21.1.1數(shù)據與數(shù)據處理1.數(shù)據和信息數(shù)據是人們用于記錄事物情況的物理符號。信息是數(shù)據中所包含的意義。信息是經過加工處理并對人類社會實踐和生產活動產生決策影響的數(shù)據。數(shù)據是用來表示信息的,但并非任何數(shù)據都能表示信息;信息是加工處理后的數(shù)據,是數(shù)據所表達的內容。信息不隨表示它的數(shù)據形式而改變,它是反映客觀現(xiàn)實世界的知識;而數(shù)據則具有任意性,用不同的數(shù)據形式可以表示同樣的信息。1.1計算機數(shù)據管理技術721.1.1數(shù)據與數(shù)據處理1.1計算機數(shù)據管理技術32.數(shù)據處理數(shù)據處理是指將數(shù)據轉換成信息的過程,它包括對數(shù)據的收集、存儲、分類、計算、加工、檢索和傳輸?shù)纫幌盗谢顒印S嬎銠C是一個具有程序執(zhí)行能力的數(shù)據處理工具,如圖所示。732.數(shù)據處理41.1.2計算機數(shù)據管理技術的發(fā)展1.人工管理階段20世紀50年代中期以前,數(shù)據管理是以人工管理方式進行的。數(shù)據管理的特點如下。(1)數(shù)據不保存(2)由應用程序管理數(shù)據(3)數(shù)據有冗余,無法實現(xiàn)共享(4)數(shù)據對應用程序不具有獨立性741.1.2計算機數(shù)據管理技術的發(fā)展52.文件管理階段20世紀50年代后期至60年代后期,計算機開始大量用于數(shù)據管理。數(shù)據處理應用程序利用操作系統(tǒng)的文件管理功能,將相關數(shù)據按一定的規(guī)則構成文件,通過文件系統(tǒng)對文件中的數(shù)據進行存取和管理,實現(xiàn)數(shù)據的文件管理方式。其特點可概括為如下兩點。數(shù)據可以長期保存數(shù)據對應用程序有一定的獨立性752.文件管理階段6當數(shù)據量增加、使用數(shù)據的用戶越來越多時,文件管理便不能適應更有效地使用數(shù)據的需要了,其癥結表現(xiàn)在3個方面。(1)數(shù)據的共享性差、冗余度大,容易造成數(shù)據不一致(2)數(shù)據獨立性差(3)數(shù)據之間缺乏有機的聯(lián)系,缺乏對數(shù)據的統(tǒng)一控制和管理76當數(shù)據量增加、使用數(shù)據的用戶越來越多時,文件管理便不能適應更3.數(shù)據庫管理階段20世紀60年代后期,數(shù)據管理技術在文件管理的基礎上發(fā)展到數(shù)據庫管理。數(shù)據庫(Database,DB)是按一定的組織方式存儲起來的、相互關聯(lián)的數(shù)據集合。在數(shù)據庫管理階段,由一種叫做數(shù)據庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)的系統(tǒng)軟件來對數(shù)據進行統(tǒng)一的控制和管理。在應用程序和數(shù)據庫之間保持較高的獨立性,數(shù)據具有完整性、一致性和安全性高等特點,并且具有充分的共享性,有效地減少了數(shù)據冗余。773.數(shù)據庫管理階段84.新型數(shù)據管理技術數(shù)據庫技術的發(fā)展先后經歷了層次數(shù)據庫、網狀數(shù)據庫和關系數(shù)據庫。層次數(shù)據庫和網狀數(shù)據庫可以看作第1代數(shù)據庫系統(tǒng),關系數(shù)據庫可以看作第2代數(shù)據庫系統(tǒng)。實際應用中涌現(xiàn)出的許多問題,促使數(shù)據庫技術不斷向前發(fā)展,出現(xiàn)了許多不同類型的新型數(shù)據管理技術。(1)分布式數(shù)據庫系統(tǒng)(2)面向對象數(shù)據庫系統(tǒng)(3)多媒體數(shù)據庫系統(tǒng)(4)數(shù)據倉庫技術(5)大數(shù)據技術784.新型數(shù)據管理技術91.2.1數(shù)據庫系統(tǒng)的組成數(shù)據庫系統(tǒng)是由計算機系統(tǒng)、數(shù)據庫及其描述機構、數(shù)據庫管理系統(tǒng)和有關人員組成的具有高度組織性的整體。1.計算機硬件計算機硬件是數(shù)據庫系統(tǒng)的物質基礎,是存儲數(shù)據庫及運行數(shù)據庫管理系統(tǒng)的硬件資源,主要包括計算機主機、存儲設備、輸入輸出設備及計算機網絡環(huán)境。1.2數(shù)據庫系統(tǒng)791.2.1數(shù)據庫系統(tǒng)的組成1.2數(shù)據庫系統(tǒng)102.計算機軟件數(shù)據庫系統(tǒng)中的軟件包括操作系統(tǒng)、數(shù)據庫管理系統(tǒng)及數(shù)據庫應用系統(tǒng)等。數(shù)據庫管理系統(tǒng)是數(shù)據庫系統(tǒng)的核心軟件之一,它提供數(shù)據定義、數(shù)據操縱、數(shù)據庫管理、數(shù)據庫建立和維護及通信等功能。數(shù)據庫管理系統(tǒng)必須運行在相應的系統(tǒng)平臺上,有操作系統(tǒng)和相關系統(tǒng)軟件的支持。數(shù)據庫應用系統(tǒng)是指系統(tǒng)開發(fā)人員利用數(shù)據庫系統(tǒng)資源開發(fā)出來的、面向某一類實際應用的應用軟件系統(tǒng)。802.計算機軟件113.數(shù)據庫數(shù)據庫是指數(shù)據庫系統(tǒng)中按照一定的方式組織的、存儲在外部存儲設備上的、能為多個用戶共享的、與應用程序相互獨立的相關數(shù)據集合。它不僅包括描述事物的數(shù)據本身,而且還包括相關事物之間的聯(lián)系。4.數(shù)據庫系統(tǒng)的有關人員數(shù)據庫系統(tǒng)的有關人員主要有3類:最終用戶、數(shù)據庫應用系統(tǒng)開發(fā)人員和數(shù)據庫管理員(DatabaseAdministrator,DBA)。813.數(shù)據庫121.2.2數(shù)據庫的結構體系數(shù)據庫領域公認的標準結構是三級模式結構及二級映射,三級模式包括外模式、概念模式和內模式,二級映射則分別是概念模式/內模式的映射及外模式/概念模式的映射。這種三級模式與二級映射構成了數(shù)據庫的結構體系,如圖所示。821.2.2數(shù)據庫的結構體系1383141.數(shù)據庫的三級模式(1)概念模式概念模式又稱邏輯模式,或簡稱為模式,對應于概念級。它是由數(shù)據庫設計者綜合所有用戶的數(shù)據,按照統(tǒng)一的觀點構造的全局邏輯結構,是對數(shù)據庫中全部數(shù)據的邏輯結構和特征的總體描述,是所有用戶的公共數(shù)據視圖(全局視圖)。841.數(shù)據庫的三級模式15(2)外模式外模式又稱子模式或用戶模式,對應于用戶級。它是某個或某幾個用戶所看到的數(shù)據庫的數(shù)據視圖,是與某一應用有關的數(shù)據的邏輯表示。外模式是從概念模式導出的一個子集,包含概念模式中允許特定用戶使用的那部分數(shù)據。85(2)外模式16(3)內模式內模式又稱存儲模式或物理模式,對應于物理級。它是數(shù)據庫中全體數(shù)據的內部表示或底層描述,是數(shù)據庫最低一級的邏輯描述,它描述了數(shù)據在存儲介質上的存儲方式和物理結構,對應著實際存儲在外存儲介質上的數(shù)據庫。86(3)內模式172.三級模式間的二級映射為了實現(xiàn)這3個抽象級別的聯(lián)系和轉換,數(shù)據庫管理系統(tǒng)在三級模式之間提供了二級映射,正是這二級映射保證了數(shù)據庫中的數(shù)據具有較高的物理獨立性和邏輯獨立性。(1)概念模式/內模式的映射(2)外模式/概念模式的映射872.三級模式間的二級映射181.2.3數(shù)據庫系統(tǒng)的特點1.數(shù)據結構化在數(shù)據庫系統(tǒng)中,每一個數(shù)據庫都是為某一應用領域服務的,這些應用彼此之間都有著密切的聯(lián)系。因此,在數(shù)據庫系統(tǒng)中不僅要考慮某個應用的數(shù)據結構,還要考慮整個組織(多個應用)的數(shù)據結構。這種數(shù)據組織方式使數(shù)據結構化了,這就要求在描述數(shù)據時不僅要描述數(shù)據本身,還要描述數(shù)據之間的聯(lián)系。881.2.3數(shù)據庫系統(tǒng)的特點192.數(shù)據共享性高、冗余度低數(shù)據共享是指多個用戶或應用程序可以訪問同一個數(shù)據庫中的數(shù)據,而且數(shù)據庫管理系統(tǒng)提供并發(fā)和協(xié)調機制,保證在多個應用程序同時訪問、存取和操作數(shù)據庫數(shù)據時,不產生任何沖突,從而保證數(shù)據不遭到破壞。數(shù)據冗余既浪費存儲空間,又容易產生數(shù)據不一致等問題。892.數(shù)據共享性高、冗余度低203.具有較高的數(shù)據獨立性數(shù)據獨立性是指應用程序與數(shù)據庫的數(shù)據結構之間相互獨立。在數(shù)據庫系統(tǒng)中,因為采用了數(shù)據庫的三級模式結構,保證了數(shù)據庫中數(shù)據的獨立性。在數(shù)據存儲結構改變時,不影響數(shù)據的全局邏輯結構,這樣保證了數(shù)據的物理獨立性。在全局邏輯結構改變時,不影響用戶的局部邏輯結構及應用程序,這樣就保證了數(shù)據的邏輯獨立性。903.具有較高的數(shù)據獨立性214.有統(tǒng)一的數(shù)據控制功能數(shù)據庫管理系統(tǒng)提供了一套有效的數(shù)據控制手段,包括數(shù)據安全性控制、數(shù)據完整性控制、數(shù)據庫的并發(fā)控制和數(shù)據庫的恢復等,增強了多用戶環(huán)境下數(shù)據的安全性和一致性保護。914.有統(tǒng)一的數(shù)據控制功能221.3.1數(shù)據模型的組成要素數(shù)據結構、數(shù)據操作及數(shù)據的完整性約束也被稱為數(shù)據模型的3個組成要素。1.數(shù)據結構數(shù)據結構研究數(shù)據之間的組織形式(數(shù)據的邏輯結構)、數(shù)據的存儲形式(數(shù)據的物理結構)及數(shù)據對象的類型等。存儲在數(shù)據庫中的對象類型的集合是數(shù)據庫的組成部分。在數(shù)據庫系統(tǒng)中,通常按照其數(shù)據結構的類型來命名數(shù)據模型。例如,層次結構、網狀結構和關系結構的數(shù)據模型分別命名為層次模型、網狀模型和關系模型。1.3數(shù)據模型921.3.1數(shù)據模型的組成要素1.3數(shù)據模型232.數(shù)據操作數(shù)據操作用于描述系統(tǒng)的動態(tài)特性,是指對數(shù)據庫中的各種數(shù)據所允許執(zhí)行的操作的集合,包括操作及有關的操作規(guī)則。數(shù)據庫主要有查詢和更新(包括插入、刪除和修改等)兩大類操作。數(shù)據模型必須定義這些操作的確切含義、操作符號、操作規(guī)則(如優(yōu)先級)及實現(xiàn)操作的語言。932.數(shù)據操作243.數(shù)據的完整性約束數(shù)據的完整性約束是一組完整性規(guī)則的集合。數(shù)據模型應該反映和規(guī)定數(shù)據必須遵守的、基本的、通用的完整性約束。此外,數(shù)據模型還應該提供定義完整性約束條件的機制,以反映具體所涉及的數(shù)據必須遵守的、特定的語義約束條件。943.數(shù)據的完整性約束251.3.2數(shù)據抽象的過程數(shù)據模型是對現(xiàn)實世界進行抽象和轉換的結果,這一過程如圖所示。951.3.2數(shù)據抽象的過程261.對現(xiàn)實世界的抽象計算機處理的對象是現(xiàn)實世界中的客觀事物,在對其實施處理的過程中,首先應了解和熟悉現(xiàn)實世界,從對現(xiàn)實世界的調查和觀察中抽象出大量描述客觀事物的事實,再對這些事實進行整理、分類和規(guī)范,進而將規(guī)范化的事實數(shù)據化,最終實現(xiàn)由數(shù)據庫系統(tǒng)存儲和處理。961.對現(xiàn)實世界的抽象272.觀念世界中的概念模型概念模型的特征是按用戶需求觀點對數(shù)據進行建模,表達了數(shù)據的全局邏輯結構,是系統(tǒng)用戶對整個應用項目涉及的數(shù)據的全面描述。概念模型主要用于數(shù)據庫設計,它獨立于實現(xiàn)時的數(shù)據庫管理系統(tǒng)。概念模型的表示方法很多,目前較常用的是E-R模型。972.觀念世界中的概念模型283.機器世界中的邏輯模型和物理模型在選定數(shù)據庫管理系統(tǒng)后,就要將E-R圖表示的概念模型轉換為具體的數(shù)據庫管理系統(tǒng)支持的邏輯模型。通常,也把數(shù)據的邏輯模型直接稱為數(shù)據模型。數(shù)據庫系統(tǒng)中主要的邏輯模型有層次模型、網狀模型和關系模型。物理模型是對數(shù)據最底層的抽象,用以描述數(shù)據在物理存儲介質上的組織結構,與具體的數(shù)據庫管理系統(tǒng)、操作系統(tǒng)和硬件有關。983.機器世界中的邏輯模型和物理模型291.3.3概念模型1.實體與實體集實體(Entity)是現(xiàn)實世界中任何可以相互區(qū)分和識別的事物,它可以是能觸及的客觀對象,還可以是抽象的事件。性質相同的同類實體的集合稱為實體集(EntitySet)。2.屬性每個實體都具有一定的特征或性質,這樣才能區(qū)分一個個實體。實體的特征稱為屬性(Attribute),一個實體可用若干屬性來刻畫。能唯一標識實體的屬性或屬性集稱為實體標識符。991.3.3概念模型303.類型與值屬性和實體都有類型(Type)和值(Value)之分。屬性類型就是屬性名及其取值類型,屬性值就是屬性所取的具體值。屬性類型是個變量,屬性值是變量所取的值,而值域是變量的取值范圍。實體類型就是實體的結構描述,通常是實體名和屬性名的集合。具有相同屬性的實體,有相同的實體類型。實體值是一個具體的實體,是屬性值的集合。1003.類型與值314.實體間的聯(lián)系(1)一對一聯(lián)系如果對于實體集A中的每一個實體,實體集B中至多只有一個實體與之聯(lián)系,反之亦然,則稱實體集A與實體集B具有一對一聯(lián)系,記為1∶1。(2)一對多聯(lián)系如果對于實體集A中的每一個實體,實體集B中可以有多個實體與之聯(lián)系,反之,對于實體集B中的每一個實體,實體集A中至多只有一個實體與之聯(lián)系,則稱實體集A與實體集B有一對多聯(lián)系,記為1∶n。(3)多對多聯(lián)系如果對于實體集A中的每一個實體,實體集B中可以有多個實體與之聯(lián)系,而對于實體集B中的每一個實體,實體集A中也可以有多個實體與之聯(lián)系,則稱實體集A與實體集B之間有多對多聯(lián)系,記為m∶n。1014.實體間的聯(lián)系325.E-R圖E-R圖是用一種直觀的圖形方式建立現(xiàn)實世界中實體及其聯(lián)系模型的工具,也是數(shù)據庫設計的一種基本工具。E-R圖用矩形框表示現(xiàn)實世界中的實體,用菱形框表示實體間的聯(lián)系,用橢圓形框表示實體和聯(lián)系的屬性。下圖用來表示讀者實體和圖書實體的多對多聯(lián)系模型。1025.E-R圖33103341.3.4邏輯模型1.層次模型層次模型(HierarchicalModel)用樹形結構來表示實體及其之間的聯(lián)系。根據樹形結構的特點,建立數(shù)據的層次模型需要滿足如下兩個條件。①有一個結點沒有父結點,這個結點即根結點。②其他結點有且僅有一個父結點。1041.3.4邏輯模型352.網狀模型網狀模型(NetworkModel)用以實體類型為結點的有向圖來表示各實體及其之間的聯(lián)系。其特點如下。①可以有一個以上的結點無父結點。②至少有一個結點有多于一個的父結點。1052.網狀模型363.關系模型關系模型(RelationalModel)用二維表格來表示實體及其相互之間的聯(lián)系。在關系模型中,把實體集看成一個二維表,每一個二維表稱為一個關系。每個關系均有一個名字,稱為關系名。教師關系1063.關系模型教師關系371.4.1關系模型的基本概念1.關系通常將一個沒有重復行、重復列,并且每個行列的交叉點只有一個基本數(shù)據的二維表格看成一個關系。二維表格包括表頭和表中的內容,相應地,關系包括關系模式和記錄的值,表包括表結構(記錄類型)和表的記錄,而滿足一定條件的規(guī)范化關系的集合,就構成了關系模型。1.4關系數(shù)據庫1071.4.1關系模型的基本概念1.4關系數(shù)據庫38關系是一種規(guī)范化了的二維表格。在關系模型中,對關系作了種種規(guī)范性限制,關系具有以下6條性質。①關系必須規(guī)范化,每一個屬性都必須是不可再分的數(shù)據項。②每一列中的分量是同一類型的數(shù)據,來自同一個域。③在同一關系中不允許出現(xiàn)相同的屬性名。④關系中不允許有完全相同的元組。⑤在同一關系中元組的次序無關緊要。⑥在同一關系中屬性的次序無關緊要。108關系是一種規(guī)范化了的二維表格。在關系模型中,對關系作了種種規(guī)2.元組二維表格的每一行在關系中稱為元組(Tuple),相當于表的一條記錄(Record)。二維表格的一行描述了現(xiàn)實世界中的一個實體。在關系數(shù)據庫中,行是不能重復的,即不允許兩行的全部元素完全對應相同。1092.元組403.屬性二維表格的每一列在關系中稱為屬性(Attribute),相當于記錄中的一個字段(Field)或數(shù)據項。每個屬性有一個屬性名,一個屬性在其每個元組上的值稱為屬性值,因此,一個屬性包括多個屬性值,只有在指定元組的情況下,屬性值才是確定的。同時,每個屬性有一定的取值范圍,稱為該屬性的值域。同樣,在關系數(shù)據庫中,列是不能重復的,即關系的屬性不允許重復。屬性必須是不可再分的,即屬性是一個基本的數(shù)據項,不能是幾個數(shù)據的組合項。1103.屬性414.關鍵字關系中能唯一區(qū)分、確定不同元組的單個屬性或屬性組合,稱為該關系的一個關鍵字。關鍵字又稱為鍵或碼(Key)。單個屬性組成的關鍵字稱為單關鍵字,多個屬性組合的關鍵字稱為組合關鍵字。需要強調的是,關鍵字的屬性值不能取“空值”,因為“空值”無法唯一地區(qū)分、確定元組。所謂“空值”,就是“不知道”或“不確定”的值。關系中能夠作為關鍵字的屬性或屬性組合可能不是唯一的。凡在關系中能夠唯一區(qū)分、確定不同元組的屬性或屬性組合,稱為候選關鍵字(CandidateKey)。在候選關鍵字中選定一個作為關鍵字,稱為該關系的主關鍵字或主鍵(PrimaryKey)。關系中主關鍵字是唯一的。1114.關鍵字425.外部關鍵字如果關系中某個屬性或屬性組合是另一個關系的關鍵字,則稱這樣的屬性或屬性組合為本關系的外部關鍵字或外鍵(ForeignKey)。在關系數(shù)據庫中,用外部關鍵字表示兩個表之間的聯(lián)系。1125.外部關鍵字436.關系模式關系模型是由若干個關系組成的,關系用關系模式(RelationalSchema)來描述。關系模式就相當于前面提到的實體類型,它代表了關系的結構,也就是二維表格的框架(表頭)。對于教師關系可以表示為:教師(編號,姓名,性別,出生日期,職稱,基本工資,研究方向)1136.關系模式441.4.2關系運算利用集合論的觀點,關系是元組的集合,每個元組包含的屬性數(shù)目相同,其中屬性的個數(shù)稱為元組的維數(shù)。將關系與二維表進行比較可以看出兩者存在簡單的對應關系,關系模式對應一個二維表的表頭,而關系的一個元組就是二維表的一行。例如,職工關系R={(E1,張一,女),(E2,王二,男),(E3,李三,男),(E3,成四,女)},相應的二維表格表示形式如表所示。職工關系R1141.4.2關系運算職工關系R451.傳統(tǒng)的關系運算(1)并(Union)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的并也是一個n元關系,記作R∪S。R∪S包含了所有分屬于R和S或同屬于R和S的元組。因為集合中不允許有重復元素,因此,同時屬于R和S的元組在R∪S中只出現(xiàn)一次。(2)差(Difference)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的差也是一個n元關系,記作R-S。R-S包含了所有屬于R但不屬于S的元組。1151.傳統(tǒng)的關系運算46(3)交(Intersection)設R和S同為n元關系,且相應的屬性取自同一個域,則R和S的交也是一個n元關系,記作R∩S。R∩S包含了所有同屬于R和S的元組。實際上,交運算可以通過差運算的組合來實現(xiàn),如A∩B=A-(A-B)或B-(B-A)。11647(4)廣義笛卡爾積設R是一個包含m個元組的j元關系,S是一個包含n個元組的k元關系,則R和S的廣義笛卡爾積是一個包含m×n個元組的j+k元關系,記作R×S,并定義R×S={(r1,r2,…,rj,s1,s2,…,sk)|(r1,r2,…,rj)∈R且{s1,s2,…,sk}∈S}即R×S的每個元組的前j個分量是R中的一個元組,而后k個分量是S中的一個元組。117(4)廣義笛卡爾積48例1-1設R={(a1,b1,c1),(a1,b2,c2),(a2,b2,c1)},S={(a1,b2,c2),(a1,b3,c2),(a2,b2,c1)},求R∪S,R-S,R∩S,R×S。根據運算規(guī)則,有如下結果。R∪S={(a1,b1,c1),(a1,b2,c2),(a2,b2,c1),(a1,b3,c2)}R-S={(a1,b1,c1)}R∩S={(a1,b2,c2),(a2,b2,c1)}R×S={(a1,b1,c1,a1,b2,c2),(a1,b1,c1,a1,b3,c2),(a1,b1,c1,a2,b2,c1),(a1,b2,c2,a1,b2,c2),(a1,b2,c2,a1,b3,c2),(a1,b2,c2,a2,b2,c1),(a2,b2,c1,a1,b2,c2),(a2,b2,c1,a1,b3,c2),(a2,b2,c1,a2,b2,c1)}R×S是一個包含9個元組的6元關系。118例1-1設R={(a1,b1,c1),(a1,b2,c22.專門的關系運算(1)選擇(Selection)設R={(a1,a2,…,an)}是一個n元關系,F(xiàn)是關于(a1,a2,…,an)的一個條件,R中所有滿足F條件的元組組成的子關系稱為R的一個選擇,記作σF(R),并定義σF(R)={(a1,a2,…,an)|(a1,a2,…,an)∈R且(a1,a2,…,an)滿足條件F}簡言之,對R關系按一定規(guī)則篩選一個子集的過程就是對R施加了一次選擇運算。1192.專門的關系運算50(2)投影(Projection)設R=R(A1,A2,…,An)是一個n元關系,{i1,i2,…,im}是{1,2,…,n}的一個子集,并且i1<i2<…<im,定義即π(R)是R中只保留屬性的新的關系,稱π(R)是R在屬性上的一個投影,通常記作通俗地講,關系R上的投影是從R中選擇出若干屬性列組成新的關系。120(2)投影(Projection)即π(R)是R中只保留屬性(3)連接(Join)連接是從兩個關系的笛卡爾積中選取屬性間滿足一定條件的元組,記作其中A和B分別為R和S上維數(shù)相等且可比的屬性組,θ是比較運算符。連接運算從R和S的笛卡爾積R×S中選取(R關系)在A屬性組上的值與(S關系)在B屬性組上值滿足比較關系θ的元組。RS121(3)連接(Join)其中A和B分別為R和S上維數(shù)相等且可比連接運算中有兩種最為重要也最為常用的連接,一種是等值連接,另一種是自然連接。θ為“=”的連接運算稱為等值連接,它是從關系R與S的笛卡爾積中選取A和B屬性值相等的那些元組。自然連接是一種特殊的等值連接,它要求在結果中把重復的屬性去掉。一般的連接操作是從行的角度進行運算,但自然連接還需要取消重復列,所以是同時從行和列的角度進行運算。122連接運算中有兩種最為重要也最為常用的連接,一種是等值連接,另例1-2一個關系數(shù)據庫由職工關系E和工資關系W組成,關系模式如下。E(編號,姓名,性別)W(編號,基本工資,標準津貼,業(yè)績津貼)寫出實現(xiàn)以下功能的關系運算表達式。①查詢全體男職工的信息。②查詢全體男職工的編號和姓名。③查詢全體職工的基本工資、標準津貼和業(yè)績津貼。123例1-2一個關系數(shù)據庫由職工關系E和工資關系W組成,關系1.4.3關系的完整性約束在關系模型中,數(shù)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論