最新01數(shù)據(jù)庫(kù)基本原理課件_第1頁(yè)
最新01數(shù)據(jù)庫(kù)基本原理課件_第2頁(yè)
最新01數(shù)據(jù)庫(kù)基本原理課件_第3頁(yè)
最新01數(shù)據(jù)庫(kù)基本原理課件_第4頁(yè)
最新01數(shù)據(jù)庫(kù)基本原理課件_第5頁(yè)
已閱讀5頁(yè),還剩77頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

01數(shù)據(jù)庫(kù)基本原理01數(shù)據(jù)庫(kù)基本原理第1章數(shù)據(jù)庫(kù)基本原理數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)的一個(gè)重要分支,數(shù)據(jù)庫(kù)技術(shù)的形成有兩大推動(dòng)力:首先是計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)技術(shù)的發(fā)展為數(shù)據(jù)庫(kù)的出現(xiàn)提供了技術(shù)基礎(chǔ);其次是現(xiàn)代社會(huì)數(shù)據(jù)和信息成幾何級(jí)數(shù)增長(zhǎng),即所謂的信息爆炸。信息爆炸使得社會(huì)迫切需要一種技術(shù)來(lái)有效地管理數(shù)據(jù),在技術(shù)和需求的推動(dòng)下,形成了現(xiàn)代數(shù)據(jù)庫(kù)技術(shù)。自1968年第一個(gè)商品化的數(shù)據(jù)庫(kù)管理系統(tǒng)IMS問世以來(lái),數(shù)據(jù)庫(kù)技術(shù)得到迅速發(fā)展,已經(jīng)成為信息管理、辦公自動(dòng)化、計(jì)算機(jī)輔助設(shè)計(jì)、決策支持等方面應(yīng)用的主要手段,廣泛應(yīng)用于社會(huì)各個(gè)行業(yè)和領(lǐng)域。12/11/20222中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程第1章數(shù)據(jù)庫(kù)基本原理數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)的最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件1.2數(shù)據(jù)模型現(xiàn)實(shí)世界中的客觀事物彼此聯(lián)系,某一事物內(nèi)部的聯(lián)系,形成系統(tǒng);系統(tǒng)之間聯(lián)系,形成更大的系統(tǒng)??陀^事物的這種普遍聯(lián)系性,決定了作為事物屬性記錄符號(hào)的數(shù)據(jù)與數(shù)據(jù)之間也存在著一定的聯(lián)系性。具有聯(lián)系性的相關(guān)數(shù)據(jù)總是按照一定的組織關(guān)系排列,從而構(gòu)成一定的結(jié)構(gòu),對(duì)這種結(jié)構(gòu)的描述就是數(shù)據(jù)模型。從理論上講,數(shù)據(jù)模型是指反映客觀事物及客觀事物間聯(lián)系的數(shù)據(jù)組織的結(jié)構(gòu)和形式。客觀事物是千變?nèi)f化的,表現(xiàn)各種客觀事物的數(shù)據(jù)結(jié)構(gòu)和形式也是千差萬(wàn)別的,盡管如此,它們之間還是有其共同性的。12/11/20229中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2數(shù)據(jù)模型現(xiàn)實(shí)世界中的客觀事物彼此聯(lián)系,某1.2.1數(shù)據(jù)模型的組成要素一般地講,數(shù)據(jù)模型是嚴(yán)格定義的概念的集合,這些概念精確描述了系統(tǒng)的靜態(tài)特性、動(dòng)態(tài)特性和完整性約束。因此,數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束3部分組成,這三個(gè)組成要素完整地描述了數(shù)據(jù)模型。1.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是所研究的對(duì)象類型的集合,是數(shù)據(jù)庫(kù)的組成部分。研究數(shù)據(jù)結(jié)構(gòu)的任務(wù)是利用計(jì)算機(jī)系統(tǒng)的知識(shí)來(lái)描述客觀世界的對(duì)象,以便能方便地進(jìn)行處理。例如在關(guān)系結(jié)構(gòu)中,使用表格數(shù)據(jù)結(jié)構(gòu)來(lái)描述客觀世界中的對(duì)象。12/11/202210中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2.1數(shù)據(jù)模型的組成要素12/10/202210中文2.數(shù)據(jù)操作數(shù)據(jù)操作是指對(duì)數(shù)據(jù)庫(kù)中各種對(duì)象(型)實(shí)例(值)允許執(zhí)行的操作的集合,包括操作及操作規(guī)則。數(shù)據(jù)庫(kù)操作主要包括檢索和更新(包括插入、刪除、修改等)兩類操作。3.數(shù)據(jù)約束數(shù)據(jù)約束是指完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符號(hào)數(shù)據(jù)模型的數(shù)據(jù)庫(kù)狀態(tài)及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效和相容。12/11/202211中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.數(shù)據(jù)操作12/10/202211中文Visual1.2.2數(shù)據(jù)模型的分類數(shù)據(jù)模型先后經(jīng)歷了層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο竽P蛶讉€(gè)階段,其中,層次模型和網(wǎng)狀模型統(tǒng)稱為非關(guān)系模型,非關(guān)系模型在20世紀(jì)70年代至80年代初非常流行?,F(xiàn)在,關(guān)系模型因?yàn)橛兄暾睦碚摶A(chǔ),已經(jīng)逐漸取代了層次模型和網(wǎng)狀模型,在數(shù)據(jù)庫(kù)產(chǎn)品中占據(jù)了主導(dǎo)地位。12/11/202212中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2.2數(shù)據(jù)模型的分類12/10/202212中文V1.層次模型(HierarchicalModel)利用樹型結(jié)構(gòu)表示實(shí)體及其之間聯(lián)系的模型稱為層次模型。層次模型中的結(jié)點(diǎn)為記錄型,表示某種類型的實(shí)體,結(jié)點(diǎn)之間的連線則表示了它們之間的關(guān)系。層次模型具有如下特點(diǎn):(1)有且僅有一個(gè)結(jié)點(diǎn)無(wú)雙親結(jié)點(diǎn),稱為根結(jié)點(diǎn)。(2)根結(jié)點(diǎn)以外的其他結(jié)點(diǎn)有且僅有一個(gè)雙親結(jié)點(diǎn)。層次模型結(jié)構(gòu)簡(jiǎn)單,層次清楚,查找的路徑明顯,但是它只能處理一對(duì)多的實(shí)體聯(lián)系。12/11/202213中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.層次模型(HierarchicalModel)122.網(wǎng)狀模型(NetworkModel)利用網(wǎng)狀結(jié)構(gòu)表示實(shí)體及其之間聯(lián)系的模型稱為網(wǎng)狀模型。網(wǎng)狀結(jié)構(gòu)是層次模型的擴(kuò)展,它表示多個(gè)從屬關(guān)系的層次結(jié)構(gòu),呈現(xiàn)一種交叉關(guān)系的網(wǎng)絡(luò)結(jié)構(gòu)。網(wǎng)狀模型是以記錄為結(jié)點(diǎn)的網(wǎng)絡(luò)結(jié)構(gòu),其典型代表是DBTG系統(tǒng)。網(wǎng)狀模型具有如下特點(diǎn):(1)可以有一個(gè)以上的結(jié)點(diǎn)無(wú)雙親結(jié)點(diǎn)。(2)至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)的雙親結(jié)點(diǎn)。可以看出,網(wǎng)狀模型去掉了層次模型的兩個(gè)限制,因而可以描述更復(fù)雜的多對(duì)多的實(shí)體聯(lián)系。層次模型是網(wǎng)狀模型的特殊形式,網(wǎng)狀模型是層次模型的一般形式。12/11/202214中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.網(wǎng)狀模型(NetworkModel)12/10/23.關(guān)系模型(RelationalModel)用二維表結(jié)構(gòu)表示實(shí)體以及實(shí)體之間聯(lián)系的模型稱為關(guān)系模型。關(guān)系模型把各種聯(lián)系都統(tǒng)一描述成一些二維表,即由若干行和若干列組成的表格。每一個(gè)這樣的二維表格就稱為一個(gè)關(guān)系。在關(guān)系模型中常用的術(shù)語(yǔ):(1)關(guān)系:一個(gè)關(guān)系對(duì)應(yīng)著通常說(shuō)的一個(gè)二維表,是具有相同性質(zhì)的元組的集合。(2)元組:二維表中的一行稱為一個(gè)元組,一個(gè)元組相當(dāng)于一個(gè)記錄。(3)屬性:二維表中的一列稱為一個(gè)屬性,一個(gè)屬性相當(dāng)于一個(gè)字段。(4)域:屬性的取值范圍稱作域。(5)分量:元組中的一個(gè)屬性值稱作分量。12/11/202215中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.關(guān)系模型(RelationalModel)12/14.面向?qū)ο竽P停P(guān)系對(duì)象模型)20世紀(jì)90年代中期以來(lái),人們發(fā)現(xiàn)關(guān)系模型的一些缺陷,提出了面向?qū)ο竽P停肓藢?duì)象、類、屬性、方法、事件等概念。面向?qū)ο竽P鸵环矫鎸?duì)數(shù)據(jù)結(jié)構(gòu)方面的關(guān)系結(jié)構(gòu)進(jìn)行了改良,另一方面為數(shù)據(jù)操作引入了對(duì)象操作的概念和手段。如今的數(shù)據(jù)庫(kù)管理系統(tǒng)基本上都提供了這方面的功能。由于目前成熟的數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用面向?qū)ο竽P蜁r(shí)沒有脫離關(guān)系模型,因此有人稱它為關(guān)系對(duì)象模型,也有人稱為后關(guān)系模型,也就是關(guān)系模型的擴(kuò)展。因此,到目前為止數(shù)據(jù)庫(kù)模型主要是層次型、網(wǎng)絡(luò)型和關(guān)系型三種。12/11/202216中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程4.面向?qū)ο竽P停P(guān)系對(duì)象模型)12/10/2022161.3數(shù)據(jù)庫(kù)系統(tǒng)1.3.1數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)(DataBase,簡(jiǎn)稱DB)是計(jì)算機(jī)系統(tǒng)對(duì)數(shù)據(jù)資源的一種管理技術(shù),是存儲(chǔ)在計(jì)算機(jī)內(nèi)的有序結(jié)構(gòu)的數(shù)據(jù)集合。其基本思想是對(duì)所有數(shù)據(jù)實(shí)行集中、統(tǒng)一、獨(dú)立的管理,數(shù)據(jù)獨(dú)立于應(yīng)用程序而存在,并以最小的代價(jià)供各種不同的用戶共享使用。數(shù)據(jù)庫(kù)技術(shù)既克服了數(shù)據(jù)處理的初期階段將應(yīng)用程序與數(shù)據(jù)置于同一過(guò)程的原始數(shù)據(jù)處理方式的不足,又克服了文件系統(tǒng)管理方式下對(duì)數(shù)據(jù)采取的不具彈性的無(wú)結(jié)構(gòu)的集合方法,以及數(shù)據(jù)冗余大、文件不易擴(kuò)充的缺點(diǎn)。12/11/202217中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3數(shù)據(jù)庫(kù)系統(tǒng)1.3.1數(shù)據(jù)庫(kù)12/10/202數(shù)據(jù)庫(kù)中的數(shù)據(jù)層次單位有兩類:邏輯單位與物理單位。邏輯單位從應(yīng)用的角度出發(fā)觀察數(shù)據(jù),一般可分為數(shù)據(jù)項(xiàng)、數(shù)據(jù)項(xiàng)組、記錄、文件和數(shù)據(jù)庫(kù)。數(shù)據(jù)的物理單位是指數(shù)據(jù)在存儲(chǔ)介質(zhì)上的存儲(chǔ)單位,一般可分為:位(比特)、字節(jié)、字、塊(物理記錄)和卷。數(shù)據(jù)庫(kù)是多記錄類型的具體值的集合,并包含記錄、數(shù)據(jù)文件和數(shù)據(jù)文件之間的數(shù)據(jù)聯(lián)系。12/11/202218中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程數(shù)據(jù)庫(kù)中的數(shù)據(jù)層次單位有兩類:邏輯單位與物理單位。邏1.3.2數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBaseManagementSystem,簡(jiǎn)稱DBMS)是一個(gè)幫助用戶建立、使用和管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的中心樞紐,應(yīng)用程序?qū)?shù)據(jù)庫(kù)的全部操作通過(guò)DBMS進(jìn)行,DBMS既是面向用戶的,也是面向整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的。學(xué)習(xí)使用數(shù)據(jù)庫(kù),就是學(xué)習(xí)某個(gè)DBMS的使用方法。在關(guān)系數(shù)據(jù)庫(kù)領(lǐng)域中有許多DBMS,這些DBMS分為兩類:一類屬于大型數(shù)據(jù)庫(kù)管理系統(tǒng),如Sybase、Oracle、SQLServer等,另一類屬于小型數(shù)據(jù)庫(kù)管理系統(tǒng),如Access、Dbase、FoxBase、VisualFoxPro等。大型數(shù)據(jù)庫(kù)管理系統(tǒng)性能比較強(qiáng)大,功能比較完善,一般需要專人管理和維護(hù),常用于大型數(shù)據(jù)庫(kù)系統(tǒng)中,如飛機(jī)訂票系統(tǒng)、銀行系統(tǒng)等。小型數(shù)據(jù)庫(kù)管理系統(tǒng)功能相對(duì)簡(jiǎn)單,容易掌握,使用也比較方便,一般用在不是很復(fù)雜的小型數(shù)據(jù)庫(kù)系統(tǒng)中。

12/11/202219中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.2數(shù)據(jù)庫(kù)管理系統(tǒng)12/10/202219中文V1.3.3數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)數(shù)據(jù)庫(kù)系統(tǒng)(DataBaseSystem,DBS)是指在計(jì)算機(jī)系統(tǒng)中引進(jìn)數(shù)據(jù)庫(kù)管理系統(tǒng)后的系統(tǒng)構(gòu)成。數(shù)據(jù)庫(kù)系統(tǒng)由數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶組成,其中數(shù)據(jù)庫(kù)管理系統(tǒng)是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)是計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的重大進(jìn)步,它具有以下特點(diǎn)。1.數(shù)據(jù)庫(kù)系統(tǒng)的優(yōu)點(diǎn)(1)數(shù)據(jù)結(jié)構(gòu)化。不同的記錄之間存在著聯(lián)系,描述數(shù)據(jù)時(shí)不僅描述數(shù)據(jù)本身還要描述數(shù)據(jù)之間存在的聯(lián)系,是數(shù)據(jù)庫(kù)系統(tǒng)的本質(zhì)特征。(2)數(shù)據(jù)共享。多個(gè)應(yīng)用可以使用同一數(shù)據(jù)庫(kù)、同一時(shí)刻多個(gè)用戶可讀取同一數(shù)據(jù)、開發(fā)新的應(yīng)用而不用增加新的存儲(chǔ)空間。12/11/202220中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.3數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)12/10/202220中文(3)數(shù)據(jù)獨(dú)立性。所謂數(shù)據(jù)獨(dú)立是指應(yīng)用程序不必隨數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)的改變而變動(dòng)。數(shù)據(jù)獨(dú)立包括數(shù)據(jù)的物理獨(dú)立性和邏輯獨(dú)立性。(4)數(shù)據(jù)的可控冗余度。從理論上講,數(shù)據(jù)庫(kù)中的數(shù)據(jù)可以完全避免冗余,但是為了提高系統(tǒng)的效率或網(wǎng)絡(luò)的友好性,往往容許少量數(shù)據(jù)冗余,這種數(shù)據(jù)的冗余是可以人為控制的,所以稱為可控冗余度。(5)數(shù)據(jù)一致性。由于數(shù)據(jù)采用相應(yīng)方法進(jìn)行組織,相互之間采用一定的機(jī)制進(jìn)行相關(guān)約束,從而保障了數(shù)據(jù)的一致性。(6)數(shù)據(jù)安全性。數(shù)據(jù)庫(kù)加入了安全保密機(jī)制,可以防止對(duì)數(shù)據(jù)的非法存取。另外,數(shù)據(jù)庫(kù)系統(tǒng)還采取了一系列措施,來(lái)恢復(fù)對(duì)數(shù)據(jù)庫(kù)的破壞。12/11/202221中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(3)數(shù)據(jù)獨(dú)立性。12/10/202221中文Vi2.數(shù)據(jù)庫(kù)系統(tǒng)的缺點(diǎn)數(shù)據(jù)庫(kù)系統(tǒng)也存在著不足,首先,建立數(shù)據(jù)庫(kù)的費(fèi)用較高。數(shù)據(jù)庫(kù)系統(tǒng)軟件和與之相聯(lián)系的任何硬件都可能是昂貴的。其次,添加內(nèi)容時(shí)變得復(fù)雜。數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)管理復(fù)雜得多。從理論上講,系統(tǒng)越復(fù)雜,就越容易失敗,恢復(fù)也越困難。最后,數(shù)據(jù)風(fēng)險(xiǎn)集中化,數(shù)據(jù)集中存儲(chǔ),雖然減少了數(shù)據(jù)冗余,但集中存儲(chǔ)也同樣使數(shù)據(jù)損壞和丟失的風(fēng)險(xiǎn)增加了。一般應(yīng)使這種風(fēng)險(xiǎn)降低到最小程度。12/11/202222中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.數(shù)據(jù)庫(kù)系統(tǒng)的缺點(diǎn)12/10/202222中文Vis1.3.4數(shù)據(jù)庫(kù)技術(shù)的發(fā)展1.第一代數(shù)據(jù)庫(kù)系統(tǒng)第一代數(shù)據(jù)庫(kù)系統(tǒng)是20世紀(jì)70年代研制的層次數(shù)據(jù)庫(kù)和網(wǎng)狀數(shù)據(jù)庫(kù)系統(tǒng)。1969年,IBM公司研制了基于層次模型的數(shù)據(jù)庫(kù)管理系統(tǒng)IMS(InformationManagementSystem)。美國(guó)數(shù)據(jù)庫(kù)系統(tǒng)語(yǔ)言協(xié)會(huì)CODASYL(ConferenceOnDataSystemLanguage)下屬的數(shù)據(jù)庫(kù)任務(wù)組DBTG(DataBaseTaskGroup)對(duì)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)方法進(jìn)行了系統(tǒng)探討,于20世紀(jì)60年代末70年代初提出了若干報(bào)告,稱為DBTG報(bào)告。DBTG報(bào)告確定并建立了網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng)的許多概念、方法和技術(shù)。它是網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的典型代表。在DBTG方法和思想的指引下,網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng)的實(shí)現(xiàn)技術(shù)不斷成熟,出現(xiàn)了許多商品化的網(wǎng)絡(luò)數(shù)據(jù)庫(kù)管理系統(tǒng)。12/11/202223中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.4數(shù)據(jù)庫(kù)技術(shù)的發(fā)展12/10/202223中文2.第二代數(shù)據(jù)庫(kù)系統(tǒng)第二代數(shù)據(jù)庫(kù)系統(tǒng)是關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)。1970年IBM公司SanJose研究實(shí)驗(yàn)室的研究員E.F.Codd發(fā)表了題為“大型共享數(shù)據(jù)庫(kù)的關(guān)系模型”的論文,提出了關(guān)系數(shù)據(jù)模型,開創(chuàng)了關(guān)系數(shù)據(jù)庫(kù)方法和關(guān)系數(shù)據(jù)庫(kù)理論,為關(guān)系數(shù)據(jù)庫(kù)技術(shù)奠定了理論基礎(chǔ)。70年代是關(guān)系數(shù)據(jù)庫(kù)理論研究和原型系統(tǒng)開發(fā)的時(shí)代,其中以IBMSanJose實(shí)驗(yàn)室開發(fā)的SystemR和Berkeley加利福尼大學(xué)研究的IN-GRES為典型代表。經(jīng)過(guò)大量的高層次研究和開發(fā),關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的研究取得了一系列的成果,主要包括:奠定了關(guān)系模型的理論基礎(chǔ);提出了關(guān)系數(shù)據(jù)語(yǔ)言;研制了大量的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)原型,攻克了在系統(tǒng)實(shí)現(xiàn)中查詢優(yōu)化、并發(fā)控制、故障恢復(fù)等一系列關(guān)鍵技術(shù)。

12/11/202224中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.第二代數(shù)據(jù)庫(kù)系統(tǒng)12/10/202224中文Vis20世紀(jì)70年代后期,關(guān)系數(shù)據(jù)庫(kù)從實(shí)驗(yàn)室走向了社會(huì)。因此,計(jì)算機(jī)領(lǐng)域中很多人把20世紀(jì)70年代稱為關(guān)系數(shù)據(jù)庫(kù)時(shí)代。到20世紀(jì)80年代幾乎所有新開發(fā)的數(shù)據(jù)庫(kù)系統(tǒng)均是關(guān)系型的。這些數(shù)據(jù)庫(kù)系統(tǒng)的運(yùn)行,使數(shù)據(jù)庫(kù)技術(shù)日益廣泛地應(yīng)用到企業(yè)管理、情報(bào)檢索、輔助決策等各個(gè)方面,成為信息系統(tǒng)和多計(jì)算機(jī)應(yīng)用系統(tǒng)的重要基礎(chǔ)。12/11/202225中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程20世紀(jì)70年代后期,關(guān)系數(shù)據(jù)庫(kù)從實(shí)驗(yàn)室走向了社會(huì)。3.第三代數(shù)據(jù)庫(kù)系統(tǒng)20世紀(jì)80年代以來(lái),數(shù)據(jù)庫(kù)技術(shù)在商業(yè)領(lǐng)域的巨大成就刺激了其他領(lǐng)域?qū)?shù)據(jù)庫(kù)需求的迅速增長(zhǎng)。例如,計(jì)算機(jī)輔助設(shè)計(jì)與制造、計(jì)算機(jī)集成制造系統(tǒng)、辦公自動(dòng)化和面向?qū)ο蟪绦蛟O(shè)計(jì)環(huán)境等等。這些領(lǐng)域需要的數(shù)據(jù)管理能力有相當(dāng)一部分是傳統(tǒng)數(shù)據(jù)庫(kù)所不能滿足的,例如:(1)復(fù)雜對(duì)象的存儲(chǔ)和處理。復(fù)雜對(duì)象不僅內(nèi)部結(jié)構(gòu)復(fù)雜,相互之間的聯(lián)系也很復(fù)雜。(2)復(fù)雜數(shù)據(jù)類型的支持。復(fù)雜數(shù)據(jù)類型包括抽象數(shù)據(jù)類型、無(wú)結(jié)構(gòu)的超長(zhǎng)數(shù)據(jù)、時(shí)間、圖形、圖像、聲音和版本數(shù)據(jù)等。(3)數(shù)據(jù)、對(duì)象、知識(shí)的統(tǒng)一管理。(4)長(zhǎng)事務(wù)和嵌套事務(wù)的處理。(5)程序設(shè)計(jì)語(yǔ)言和數(shù)據(jù)庫(kù)語(yǔ)言無(wú)間隙的集成。(6)巨型數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)可超過(guò)10的12次方字節(jié))的管理。

12/11/202226中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.第三代數(shù)據(jù)庫(kù)系統(tǒng)12/10/202226中文Vis1.4關(guān)系數(shù)據(jù)庫(kù)1.4.1關(guān)系數(shù)據(jù)庫(kù)概述1.關(guān)系模型的基本概念(1)字段(Field)。信息世界中的“屬性”一詞,在數(shù)據(jù)世界中使用數(shù)據(jù)項(xiàng)一詞進(jìn)行描述。從數(shù)據(jù)庫(kù)的角度講,數(shù)據(jù)項(xiàng)就是字段。從表格的角度講,字段稱為列。通常使用字段這一名詞比較通俗。字段和屬性一樣,也用型和值表示。由此可見,字段與屬性、列、數(shù)據(jù)項(xiàng)這些術(shù)語(yǔ),所描述的對(duì)象都是相同的,只是在不同角度,所用不同而已。12/11/202227中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4關(guān)系數(shù)據(jù)庫(kù)1.4.1關(guān)系數(shù)據(jù)庫(kù)概述12/10(2)記錄(Record)。字段的有序集合稱為記錄,在關(guān)系模型中,記錄稱為元組。在表中記錄稱為一行。在概念模型也稱為實(shí)體。換句話說(shuō),實(shí)體、記錄、元組和行是不同角度描述同一對(duì)象的不同術(shù)語(yǔ)。記錄也用型和值來(lái)描述。記錄型是字段型的集合。記錄值是字段值的集合。(3)表(Table)。表是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中的基本單位,是具有相同性質(zhì)的元組的集合。表也分為型和值,表的型也稱作關(guān)系模型,或者稱為表結(jié)構(gòu),顯然是由一系列屬性所組成。表在關(guān)系模型理論中描述為一個(gè)關(guān)系。(4)關(guān)鍵字(KeyWords)。關(guān)系中能惟一區(qū)分和確定不同記錄的字段或字段組合,稱為關(guān)鍵字。單個(gè)字段組成的關(guān)鍵字稱為單關(guān)鍵字,多個(gè)字段組合的關(guān)鍵字稱為組合關(guān)鍵字。12/11/202228中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(2)記錄(Record)。12/10/202228(5)主關(guān)鍵字。主關(guān)鍵字也稱為主鍵,當(dāng)一個(gè)關(guān)系中有多個(gè)關(guān)鍵字的時(shí)候,可以選中其中一個(gè)關(guān)鍵字作為主關(guān)鍵字。(6)外關(guān)鍵字。在眾多屬性中,如果某個(gè)屬性不是該關(guān)系的主關(guān)鍵字,但卻是另一個(gè)關(guān)系的主關(guān)鍵字,則稱這個(gè)關(guān)鍵字為外關(guān)鍵字。(7)關(guān)系數(shù)據(jù)庫(kù)(RelationDB)。所謂關(guān)系數(shù)據(jù)庫(kù)就是由若干個(gè)表組成的集合。換句話說(shuō),關(guān)系數(shù)據(jù)庫(kù)至少有一個(gè)表,才能稱之為數(shù)據(jù)庫(kù)。現(xiàn)實(shí)中,關(guān)系數(shù)據(jù)庫(kù)有若干個(gè)表有機(jī)地組合在一起,以滿足某類應(yīng)用系統(tǒng)的需要。

12/11/202229中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(5)主關(guān)鍵字。12/10/202229中文Vis2.關(guān)系模型的特點(diǎn)除了具有一般數(shù)據(jù)庫(kù)的共同的優(yōu)點(diǎn)之外,關(guān)系模型具有如下特點(diǎn):(1)數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單,操作方便。在關(guān)系模型中使用人們通常使用的表格來(lái)描述,很接近實(shí)際,表間的關(guān)系用公共屬性名表示,沒有指針鏈接,簡(jiǎn)化了數(shù)據(jù)定義,操作也很方便。(2)一體化的數(shù)據(jù)子語(yǔ)言。在其他數(shù)據(jù)庫(kù)系統(tǒng)的DBMS的子語(yǔ)言分為DDL、DML和DSDL,它們各自完成不同的功能,而關(guān)系數(shù)據(jù)子語(yǔ)言將這些功能合為一體,既可進(jìn)行查詢、更新等數(shù)據(jù)操作,又具有數(shù)據(jù)定義和控制功能,在進(jìn)行數(shù)據(jù)操作時(shí)還可以動(dòng)態(tài)地修改數(shù)據(jù)結(jié)構(gòu),使用方便,提高了編程效率。12/11/202230中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.關(guān)系模型的特點(diǎn)12/10/202230中文Visu(3)堅(jiān)實(shí)的理論基礎(chǔ)。關(guān)系數(shù)據(jù)模型建立在數(shù)學(xué)概念基礎(chǔ)上,如集合論等,此外還有關(guān)系的規(guī)范化和查詢優(yōu)化等理論,這些研究成果是對(duì)數(shù)據(jù)庫(kù)技術(shù)的研究從經(jīng)驗(yàn)發(fā)展到科學(xué)的高度,給數(shù)據(jù)庫(kù)技術(shù)的進(jìn)一步研究奠定了基礎(chǔ)。(4)面向集合的存取方式。關(guān)系數(shù)據(jù)庫(kù)可以在關(guān)系一級(jí)進(jìn)行運(yùn)算,一次查詢結(jié)果可以得到一組記錄,對(duì)數(shù)據(jù)的其他操作也可以一次多個(gè)元組進(jìn)行,其語(yǔ)言簡(jiǎn)練,非過(guò)程化程度高。此外,關(guān)系數(shù)據(jù)模型有利于開展數(shù)據(jù)庫(kù)其他應(yīng)用,例如關(guān)系數(shù)據(jù)庫(kù)有強(qiáng)大的分解能力,有利于分布式數(shù)據(jù)庫(kù)的實(shí)現(xiàn),它為各種非預(yù)期查詢提供支持,有利于決策支持系統(tǒng)的開發(fā)等等。當(dāng)然關(guān)系數(shù)據(jù)模型也表現(xiàn)出一些不足,其中比較突出的是語(yǔ)義比較貧乏,處理多介質(zhì)非格式化的數(shù)據(jù)(圖像、圖形、聲音等)時(shí)顯得力不從心。另外除了一些大型系統(tǒng)外,多個(gè)關(guān)系間的查詢效率還是比較低的。

12/11/202231中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(3)堅(jiān)實(shí)的理論基礎(chǔ)。12/10/202231中文3.關(guān)系的基本性質(zhì)表格是日常使用比較廣泛的一種數(shù)據(jù)表示方法,在關(guān)系模型中,將各種實(shí)體之間的聯(lián)系都統(tǒng)一描述成一些二維表,即由若干行和若干列組成的表格。這些表格不但存放著實(shí)體本身的數(shù)據(jù),而且還存放著實(shí)體之間的聯(lián)系。在關(guān)系數(shù)據(jù)庫(kù)中,一個(gè)關(guān)系實(shí)際上也就是一個(gè)二維表,也稱作數(shù)據(jù)表。12/11/202232中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.關(guān)系的基本性質(zhì)12/10/202232中文Visu1.4.2關(guān)系表之間的關(guān)聯(lián)類型在一個(gè)關(guān)系數(shù)據(jù)庫(kù)中,若想將依賴于關(guān)系模型建立的多個(gè)數(shù)據(jù)表組織在一起,反映客觀事物數(shù)據(jù)間的多種對(duì)應(yīng)關(guān)系,通常將這些數(shù)據(jù)表放入同一個(gè)數(shù)據(jù)庫(kù)中,并建立表間關(guān)聯(lián)。在同一個(gè)數(shù)據(jù)庫(kù)中,表間關(guān)聯(lián)關(guān)系的關(guān)聯(lián)類型常有一對(duì)一、一對(duì)多和多對(duì)一3種。1.一對(duì)一關(guān)系一對(duì)一關(guān)系即在兩個(gè)數(shù)據(jù)表中選一個(gè)相同屬性字段作為關(guān)鍵字段,把其中一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為主關(guān)鍵字段,該字段值是惟一的,而另一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為外關(guān)鍵字段,該字段值也是惟一的。即A表中的每一條記錄在B表中僅能有一個(gè)匹配記錄,同樣在B表中的每一條記錄也只能在A表中有一個(gè)匹配記錄。

12/11/202233中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4.2關(guān)系表之間的關(guān)聯(lián)類型12/10/202233中2.一對(duì)多關(guān)系一對(duì)多關(guān)系,即在兩個(gè)數(shù)據(jù)表中選一個(gè)相同屬性字段作為關(guān)鍵字段,把其中一個(gè)數(shù)據(jù)表的關(guān)鍵字段稱為主關(guān)鍵字段,該字段值是惟一的,而把另一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為外關(guān)鍵字段,該字段值是重復(fù)的。即A表中的一條記錄能與B表中的多個(gè)記錄相匹配,但是B表中的一條記錄僅能與A表中的一個(gè)記錄匹配。3.多對(duì)一關(guān)系多對(duì)一關(guān)系與一對(duì)多關(guān)系是類似的,惟一的區(qū)別是在兩個(gè)相關(guān)聯(lián)的數(shù)據(jù)表中,選擇哪一個(gè)數(shù)據(jù)表中的關(guān)鍵字段為主關(guān)鍵字段,該字段值是重復(fù)的,與它關(guān)聯(lián)的另一個(gè)數(shù)據(jù)表中的關(guān)鍵字段為外關(guān)鍵字段,該字段值是惟一的。即A表中的一條記錄僅能與B表中的一個(gè)記錄匹配,但是B表中的一條記錄能與A表中的多個(gè)記錄相匹配。

12/11/202234中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.一對(duì)多關(guān)系12/10/202234中文Visual1.4.3關(guān)系的操作關(guān)系操作也叫做關(guān)系運(yùn)算,是基于關(guān)系模型上的基礎(chǔ)操作,但只是數(shù)據(jù)庫(kù)操作中的一部分。關(guān)系操作屬于集合運(yùn)算范疇,為簡(jiǎn)單起見,下面僅從數(shù)據(jù)庫(kù)操作的角度來(lái)說(shuō)明關(guān)系操作的基本內(nèi)容。在關(guān)系操作中,常見的關(guān)系操作包括投影操作、選擇操作和連接操作3種。1.投影操作(Project)投影操作是從關(guān)系中選擇某些字段的所有值組成一個(gè)新的關(guān)系。即是對(duì)一個(gè)關(guān)系在列的方向上進(jìn)行選擇,刪除關(guān)系中的某些列,并按要求重新排列次序。12/11/202235中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4.3關(guān)系的操作12/10/202235中文Vis2.選擇操作(Select)選擇操作是從關(guān)系中選擇某些滿足條件的記錄組成一個(gè)新的關(guān)系。即是對(duì)一個(gè)關(guān)系在行的方向上進(jìn)行選擇,它把符合某個(gè)條件的元組選擇出來(lái),重新構(gòu)成一個(gè)原關(guān)系的子集。3.連接操作(Join)連接操作是將兩個(gè)或多個(gè)關(guān)系通過(guò)連接條件組成一個(gè)新的關(guān)系。即是從兩個(gè)關(guān)系中選擇屬性間滿足一定條件的元組,重新構(gòu)成的一個(gè)關(guān)系。12/11/202236中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.選擇操作(Select)12/10/202236中文1.4.4關(guān)系的完整性關(guān)系完整性即關(guān)系中數(shù)據(jù)以及具有關(guān)聯(lián)關(guān)系的數(shù)據(jù)之間必須遵循的制約和依存關(guān)系,主要用于保證數(shù)據(jù)的正確性、有效性和相容性。關(guān)系模型的完整性規(guī)則主要有以下4種類型:實(shí)體完整性(EntityIntegrity)、域完整性(DomainIntegrity)、參照完整性(ReferentialIntegrity)和用戶定義完整性(User-definedIntegrity)。1.實(shí)體完整性關(guān)系通常對(duì)應(yīng)現(xiàn)實(shí)世界的一個(gè)實(shí)體集?,F(xiàn)實(shí)世界中的實(shí)體是可區(qū)分的,即每個(gè)實(shí)體具有某種惟一性標(biāo)識(shí)。相應(yīng)地,在關(guān)系模型中以主關(guān)鍵字作為該實(shí)體記錄的惟一標(biāo)識(shí)。實(shí)體完整性規(guī)則要求主關(guān)鍵字中屬性(即主屬性)不能重復(fù)或取空值。12/11/202237中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4.4關(guān)系的完整性12/10/202237中文Vi2.域完整性域完整性是指數(shù)據(jù)庫(kù)表中的列(字段)必須滿足某種特定的數(shù)據(jù)類型或約束。其中約束又包括取值范圍、精度等規(guī)定。例如在成績(jī)表中,規(guī)定成績(jī)?nèi)≈捣秶?~100之間,這種約束稱為域完整性約束。3.參照完整性參照完整性是指兩個(gè)表的主關(guān)鍵字和外關(guān)鍵字的數(shù)據(jù)對(duì)應(yīng)一致。它確保了有主關(guān)鍵字的表中對(duì)應(yīng)其他表的外關(guān)鍵字的行存在,即保證了表之間的數(shù)據(jù)的一致性,防止了數(shù)據(jù)丟失或無(wú)意義的數(shù)據(jù)在數(shù)據(jù)庫(kù)中擴(kuò)散。參照完整性是建立在外關(guān)鍵字和主關(guān)鍵字之間或外關(guān)鍵字和惟一性關(guān)鍵字之間的關(guān)系上的。在關(guān)系模型中,實(shí)體與實(shí)體間的聯(lián)系都是用關(guān)系來(lái)描述的,這樣就自然存在著關(guān)系與關(guān)系間的引用。12/11/202238中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.域完整性12/10/202238中文Visual4.用戶自定義完整性不同的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)根據(jù)其應(yīng)用環(huán)境的不同,往往還需要一些特殊的約束條件。用戶定義的完整性即是針對(duì)某個(gè)特定關(guān)系數(shù)據(jù)庫(kù)的約束條件,它反映了某一具體應(yīng)用所涉及的數(shù)據(jù)必須滿足的語(yǔ)義要求。關(guān)系模型(例如VisualFoxPro)提供定義和檢驗(yàn)這類完整性的機(jī)制,以便用統(tǒng)一的系統(tǒng)方法來(lái)處理它們,不需要由應(yīng)用程序承擔(dān)這一功能,這樣就降低了應(yīng)用程序開發(fā)的難度。其他的完整性類型都支持用戶定義的完整性。12/11/202239中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程4.用戶自定義完整性12/10/202239中文Vis小結(jié)本章從信息和數(shù)據(jù)的概念出發(fā),闡明了二者之間的關(guān)系:數(shù)據(jù)是信息的載體,信息是數(shù)據(jù)的內(nèi)涵。計(jì)算機(jī)數(shù)據(jù)管理技術(shù)的發(fā)展經(jīng)歷了人工管理、文件系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)三個(gè)階段。數(shù)據(jù)庫(kù)模型主要包括層次模型、網(wǎng)狀模型、關(guān)系模型,分別介紹了這些模型的概念和特點(diǎn),其中關(guān)系模型在目前的實(shí)際應(yīng)用中居于絕對(duì)領(lǐng)導(dǎo)地位。對(duì)數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)和數(shù)據(jù)庫(kù)系統(tǒng)等幾個(gè)重要的概念進(jìn)行了闡述,介紹了數(shù)據(jù)庫(kù)技術(shù)發(fā)展的三個(gè)階段及其特點(diǎn)。最后,對(duì)關(guān)系數(shù)據(jù)庫(kù)以及其中的表間關(guān)系、關(guān)系操作運(yùn)算、關(guān)系完整性的概念和類型等進(jìn)行了詳細(xì)說(shuō)明。本章內(nèi)容是數(shù)據(jù)庫(kù)系統(tǒng)的基礎(chǔ)原理,讀者要認(rèn)真理解和掌握。12/11/202240中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程小結(jié)本章從信息和數(shù)據(jù)的概念出發(fā),闡明了二者之間的關(guān)最新01數(shù)據(jù)庫(kù)基本原理課件01數(shù)據(jù)庫(kù)基本原理01數(shù)據(jù)庫(kù)基本原理第1章數(shù)據(jù)庫(kù)基本原理數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)的一個(gè)重要分支,數(shù)據(jù)庫(kù)技術(shù)的形成有兩大推動(dòng)力:首先是計(jì)算機(jī)技術(shù)的發(fā)展,計(jì)算機(jī)技術(shù)的發(fā)展為數(shù)據(jù)庫(kù)的出現(xiàn)提供了技術(shù)基礎(chǔ);其次是現(xiàn)代社會(huì)數(shù)據(jù)和信息成幾何級(jí)數(shù)增長(zhǎng),即所謂的信息爆炸。信息爆炸使得社會(huì)迫切需要一種技術(shù)來(lái)有效地管理數(shù)據(jù),在技術(shù)和需求的推動(dòng)下,形成了現(xiàn)代數(shù)據(jù)庫(kù)技術(shù)。自1968年第一個(gè)商品化的數(shù)據(jù)庫(kù)管理系統(tǒng)IMS問世以來(lái),數(shù)據(jù)庫(kù)技術(shù)得到迅速發(fā)展,已經(jīng)成為信息管理、辦公自動(dòng)化、計(jì)算機(jī)輔助設(shè)計(jì)、決策支持等方面應(yīng)用的主要手段,廣泛應(yīng)用于社會(huì)各個(gè)行業(yè)和領(lǐng)域。12/11/202243中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程第1章數(shù)據(jù)庫(kù)基本原理數(shù)據(jù)庫(kù)技術(shù)是計(jì)算機(jī)科學(xué)技術(shù)的最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件最新01數(shù)據(jù)庫(kù)基本原理課件1.2數(shù)據(jù)模型現(xiàn)實(shí)世界中的客觀事物彼此聯(lián)系,某一事物內(nèi)部的聯(lián)系,形成系統(tǒng);系統(tǒng)之間聯(lián)系,形成更大的系統(tǒng)??陀^事物的這種普遍聯(lián)系性,決定了作為事物屬性記錄符號(hào)的數(shù)據(jù)與數(shù)據(jù)之間也存在著一定的聯(lián)系性。具有聯(lián)系性的相關(guān)數(shù)據(jù)總是按照一定的組織關(guān)系排列,從而構(gòu)成一定的結(jié)構(gòu),對(duì)這種結(jié)構(gòu)的描述就是數(shù)據(jù)模型。從理論上講,數(shù)據(jù)模型是指反映客觀事物及客觀事物間聯(lián)系的數(shù)據(jù)組織的結(jié)構(gòu)和形式??陀^事物是千變?nèi)f化的,表現(xiàn)各種客觀事物的數(shù)據(jù)結(jié)構(gòu)和形式也是千差萬(wàn)別的,盡管如此,它們之間還是有其共同性的。12/11/202250中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2數(shù)據(jù)模型現(xiàn)實(shí)世界中的客觀事物彼此聯(lián)系,某1.2.1數(shù)據(jù)模型的組成要素一般地講,數(shù)據(jù)模型是嚴(yán)格定義的概念的集合,這些概念精確描述了系統(tǒng)的靜態(tài)特性、動(dòng)態(tài)特性和完整性約束。因此,數(shù)據(jù)模型通常由數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)操作和數(shù)據(jù)約束3部分組成,這三個(gè)組成要素完整地描述了數(shù)據(jù)模型。1.數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)是所研究的對(duì)象類型的集合,是數(shù)據(jù)庫(kù)的組成部分。研究數(shù)據(jù)結(jié)構(gòu)的任務(wù)是利用計(jì)算機(jī)系統(tǒng)的知識(shí)來(lái)描述客觀世界的對(duì)象,以便能方便地進(jìn)行處理。例如在關(guān)系結(jié)構(gòu)中,使用表格數(shù)據(jù)結(jié)構(gòu)來(lái)描述客觀世界中的對(duì)象。12/11/202251中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2.1數(shù)據(jù)模型的組成要素12/10/202210中文2.數(shù)據(jù)操作數(shù)據(jù)操作是指對(duì)數(shù)據(jù)庫(kù)中各種對(duì)象(型)實(shí)例(值)允許執(zhí)行的操作的集合,包括操作及操作規(guī)則。數(shù)據(jù)庫(kù)操作主要包括檢索和更新(包括插入、刪除、修改等)兩類操作。3.數(shù)據(jù)約束數(shù)據(jù)約束是指完整性規(guī)則的集合。完整性規(guī)則是給定的數(shù)據(jù)模型中數(shù)據(jù)及其聯(lián)系所具有的制約和依存規(guī)則,用以限定符號(hào)數(shù)據(jù)模型的數(shù)據(jù)庫(kù)狀態(tài)及狀態(tài)的變化,以保證數(shù)據(jù)的正確、有效和相容。12/11/202252中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.數(shù)據(jù)操作12/10/202211中文Visual1.2.2數(shù)據(jù)模型的分類數(shù)據(jù)模型先后經(jīng)歷了層次模型、網(wǎng)狀模型、關(guān)系模型和面向?qū)ο竽P蛶讉€(gè)階段,其中,層次模型和網(wǎng)狀模型統(tǒng)稱為非關(guān)系模型,非關(guān)系模型在20世紀(jì)70年代至80年代初非常流行?,F(xiàn)在,關(guān)系模型因?yàn)橛兄暾睦碚摶A(chǔ),已經(jīng)逐漸取代了層次模型和網(wǎng)狀模型,在數(shù)據(jù)庫(kù)產(chǎn)品中占據(jù)了主導(dǎo)地位。12/11/202253中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.2.2數(shù)據(jù)模型的分類12/10/202212中文V1.層次模型(HierarchicalModel)利用樹型結(jié)構(gòu)表示實(shí)體及其之間聯(lián)系的模型稱為層次模型。層次模型中的結(jié)點(diǎn)為記錄型,表示某種類型的實(shí)體,結(jié)點(diǎn)之間的連線則表示了它們之間的關(guān)系。層次模型具有如下特點(diǎn):(1)有且僅有一個(gè)結(jié)點(diǎn)無(wú)雙親結(jié)點(diǎn),稱為根結(jié)點(diǎn)。(2)根結(jié)點(diǎn)以外的其他結(jié)點(diǎn)有且僅有一個(gè)雙親結(jié)點(diǎn)。層次模型結(jié)構(gòu)簡(jiǎn)單,層次清楚,查找的路徑明顯,但是它只能處理一對(duì)多的實(shí)體聯(lián)系。12/11/202254中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.層次模型(HierarchicalModel)122.網(wǎng)狀模型(NetworkModel)利用網(wǎng)狀結(jié)構(gòu)表示實(shí)體及其之間聯(lián)系的模型稱為網(wǎng)狀模型。網(wǎng)狀結(jié)構(gòu)是層次模型的擴(kuò)展,它表示多個(gè)從屬關(guān)系的層次結(jié)構(gòu),呈現(xiàn)一種交叉關(guān)系的網(wǎng)絡(luò)結(jié)構(gòu)。網(wǎng)狀模型是以記錄為結(jié)點(diǎn)的網(wǎng)絡(luò)結(jié)構(gòu),其典型代表是DBTG系統(tǒng)。網(wǎng)狀模型具有如下特點(diǎn):(1)可以有一個(gè)以上的結(jié)點(diǎn)無(wú)雙親結(jié)點(diǎn)。(2)至少有一個(gè)結(jié)點(diǎn)有多于一個(gè)的雙親結(jié)點(diǎn)。可以看出,網(wǎng)狀模型去掉了層次模型的兩個(gè)限制,因而可以描述更復(fù)雜的多對(duì)多的實(shí)體聯(lián)系。層次模型是網(wǎng)狀模型的特殊形式,網(wǎng)狀模型是層次模型的一般形式。12/11/202255中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.網(wǎng)狀模型(NetworkModel)12/10/23.關(guān)系模型(RelationalModel)用二維表結(jié)構(gòu)表示實(shí)體以及實(shí)體之間聯(lián)系的模型稱為關(guān)系模型。關(guān)系模型把各種聯(lián)系都統(tǒng)一描述成一些二維表,即由若干行和若干列組成的表格。每一個(gè)這樣的二維表格就稱為一個(gè)關(guān)系。在關(guān)系模型中常用的術(shù)語(yǔ):(1)關(guān)系:一個(gè)關(guān)系對(duì)應(yīng)著通常說(shuō)的一個(gè)二維表,是具有相同性質(zhì)的元組的集合。(2)元組:二維表中的一行稱為一個(gè)元組,一個(gè)元組相當(dāng)于一個(gè)記錄。(3)屬性:二維表中的一列稱為一個(gè)屬性,一個(gè)屬性相當(dāng)于一個(gè)字段。(4)域:屬性的取值范圍稱作域。(5)分量:元組中的一個(gè)屬性值稱作分量。12/11/202256中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.關(guān)系模型(RelationalModel)12/14.面向?qū)ο竽P停P(guān)系對(duì)象模型)20世紀(jì)90年代中期以來(lái),人們發(fā)現(xiàn)關(guān)系模型的一些缺陷,提出了面向?qū)ο竽P?,引入了?duì)象、類、屬性、方法、事件等概念。面向?qū)ο竽P鸵环矫鎸?duì)數(shù)據(jù)結(jié)構(gòu)方面的關(guān)系結(jié)構(gòu)進(jìn)行了改良,另一方面為數(shù)據(jù)操作引入了對(duì)象操作的概念和手段。如今的數(shù)據(jù)庫(kù)管理系統(tǒng)基本上都提供了這方面的功能。由于目前成熟的數(shù)據(jù)庫(kù)系統(tǒng)應(yīng)用面向?qū)ο竽P蜁r(shí)沒有脫離關(guān)系模型,因此有人稱它為關(guān)系對(duì)象模型,也有人稱為后關(guān)系模型,也就是關(guān)系模型的擴(kuò)展。因此,到目前為止數(shù)據(jù)庫(kù)模型主要是層次型、網(wǎng)絡(luò)型和關(guān)系型三種。12/11/202257中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程4.面向?qū)ο竽P停P(guān)系對(duì)象模型)12/10/2022161.3數(shù)據(jù)庫(kù)系統(tǒng)1.3.1數(shù)據(jù)庫(kù)數(shù)據(jù)庫(kù)(DataBase,簡(jiǎn)稱DB)是計(jì)算機(jī)系統(tǒng)對(duì)數(shù)據(jù)資源的一種管理技術(shù),是存儲(chǔ)在計(jì)算機(jī)內(nèi)的有序結(jié)構(gòu)的數(shù)據(jù)集合。其基本思想是對(duì)所有數(shù)據(jù)實(shí)行集中、統(tǒng)一、獨(dú)立的管理,數(shù)據(jù)獨(dú)立于應(yīng)用程序而存在,并以最小的代價(jià)供各種不同的用戶共享使用。數(shù)據(jù)庫(kù)技術(shù)既克服了數(shù)據(jù)處理的初期階段將應(yīng)用程序與數(shù)據(jù)置于同一過(guò)程的原始數(shù)據(jù)處理方式的不足,又克服了文件系統(tǒng)管理方式下對(duì)數(shù)據(jù)采取的不具彈性的無(wú)結(jié)構(gòu)的集合方法,以及數(shù)據(jù)冗余大、文件不易擴(kuò)充的缺點(diǎn)。12/11/202258中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3數(shù)據(jù)庫(kù)系統(tǒng)1.3.1數(shù)據(jù)庫(kù)12/10/202數(shù)據(jù)庫(kù)中的數(shù)據(jù)層次單位有兩類:邏輯單位與物理單位。邏輯單位從應(yīng)用的角度出發(fā)觀察數(shù)據(jù),一般可分為數(shù)據(jù)項(xiàng)、數(shù)據(jù)項(xiàng)組、記錄、文件和數(shù)據(jù)庫(kù)。數(shù)據(jù)的物理單位是指數(shù)據(jù)在存儲(chǔ)介質(zhì)上的存儲(chǔ)單位,一般可分為:位(比特)、字節(jié)、字、塊(物理記錄)和卷。數(shù)據(jù)庫(kù)是多記錄類型的具體值的集合,并包含記錄、數(shù)據(jù)文件和數(shù)據(jù)文件之間的數(shù)據(jù)聯(lián)系。12/11/202259中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程數(shù)據(jù)庫(kù)中的數(shù)據(jù)層次單位有兩類:邏輯單位與物理單位。邏1.3.2數(shù)據(jù)庫(kù)管理系統(tǒng)數(shù)據(jù)庫(kù)管理系統(tǒng)(DataBaseManagementSystem,簡(jiǎn)稱DBMS)是一個(gè)幫助用戶建立、使用和管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)據(jù)庫(kù)系統(tǒng)的中心樞紐,應(yīng)用程序?qū)?shù)據(jù)庫(kù)的全部操作通過(guò)DBMS進(jìn)行,DBMS既是面向用戶的,也是面向整個(gè)數(shù)據(jù)庫(kù)系統(tǒng)的。學(xué)習(xí)使用數(shù)據(jù)庫(kù),就是學(xué)習(xí)某個(gè)DBMS的使用方法。在關(guān)系數(shù)據(jù)庫(kù)領(lǐng)域中有許多DBMS,這些DBMS分為兩類:一類屬于大型數(shù)據(jù)庫(kù)管理系統(tǒng),如Sybase、Oracle、SQLServer等,另一類屬于小型數(shù)據(jù)庫(kù)管理系統(tǒng),如Access、Dbase、FoxBase、VisualFoxPro等。大型數(shù)據(jù)庫(kù)管理系統(tǒng)性能比較強(qiáng)大,功能比較完善,一般需要專人管理和維護(hù),常用于大型數(shù)據(jù)庫(kù)系統(tǒng)中,如飛機(jī)訂票系統(tǒng)、銀行系統(tǒng)等。小型數(shù)據(jù)庫(kù)管理系統(tǒng)功能相對(duì)簡(jiǎn)單,容易掌握,使用也比較方便,一般用在不是很復(fù)雜的小型數(shù)據(jù)庫(kù)系統(tǒng)中。

12/11/202260中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.2數(shù)據(jù)庫(kù)管理系統(tǒng)12/10/202219中文V1.3.3數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)數(shù)據(jù)庫(kù)系統(tǒng)(DataBaseSystem,DBS)是指在計(jì)算機(jī)系統(tǒng)中引進(jìn)數(shù)據(jù)庫(kù)管理系統(tǒng)后的系統(tǒng)構(gòu)成。數(shù)據(jù)庫(kù)系統(tǒng)由數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)管理員和用戶組成,其中數(shù)據(jù)庫(kù)管理系統(tǒng)是數(shù)據(jù)庫(kù)系統(tǒng)的核心組成部分。數(shù)據(jù)庫(kù)系統(tǒng)的出現(xiàn)是計(jì)算機(jī)數(shù)據(jù)處理技術(shù)的重大進(jìn)步,它具有以下特點(diǎn)。1.數(shù)據(jù)庫(kù)系統(tǒng)的優(yōu)點(diǎn)(1)數(shù)據(jù)結(jié)構(gòu)化。不同的記錄之間存在著聯(lián)系,描述數(shù)據(jù)時(shí)不僅描述數(shù)據(jù)本身還要描述數(shù)據(jù)之間存在的聯(lián)系,是數(shù)據(jù)庫(kù)系統(tǒng)的本質(zhì)特征。(2)數(shù)據(jù)共享。多個(gè)應(yīng)用可以使用同一數(shù)據(jù)庫(kù)、同一時(shí)刻多個(gè)用戶可讀取同一數(shù)據(jù)、開發(fā)新的應(yīng)用而不用增加新的存儲(chǔ)空間。12/11/202261中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.3數(shù)據(jù)庫(kù)系統(tǒng)的特點(diǎn)12/10/202220中文(3)數(shù)據(jù)獨(dú)立性。所謂數(shù)據(jù)獨(dú)立是指應(yīng)用程序不必隨數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)的改變而變動(dòng)。數(shù)據(jù)獨(dú)立包括數(shù)據(jù)的物理獨(dú)立性和邏輯獨(dú)立性。(4)數(shù)據(jù)的可控冗余度。從理論上講,數(shù)據(jù)庫(kù)中的數(shù)據(jù)可以完全避免冗余,但是為了提高系統(tǒng)的效率或網(wǎng)絡(luò)的友好性,往往容許少量數(shù)據(jù)冗余,這種數(shù)據(jù)的冗余是可以人為控制的,所以稱為可控冗余度。(5)數(shù)據(jù)一致性。由于數(shù)據(jù)采用相應(yīng)方法進(jìn)行組織,相互之間采用一定的機(jī)制進(jìn)行相關(guān)約束,從而保障了數(shù)據(jù)的一致性。(6)數(shù)據(jù)安全性。數(shù)據(jù)庫(kù)加入了安全保密機(jī)制,可以防止對(duì)數(shù)據(jù)的非法存取。另外,數(shù)據(jù)庫(kù)系統(tǒng)還采取了一系列措施,來(lái)恢復(fù)對(duì)數(shù)據(jù)庫(kù)的破壞。12/11/202262中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(3)數(shù)據(jù)獨(dú)立性。12/10/202221中文Vi2.數(shù)據(jù)庫(kù)系統(tǒng)的缺點(diǎn)數(shù)據(jù)庫(kù)系統(tǒng)也存在著不足,首先,建立數(shù)據(jù)庫(kù)的費(fèi)用較高。數(shù)據(jù)庫(kù)系統(tǒng)軟件和與之相聯(lián)系的任何硬件都可能是昂貴的。其次,添加內(nèi)容時(shí)變得復(fù)雜。數(shù)據(jù)庫(kù)系統(tǒng)比文件系統(tǒng)管理復(fù)雜得多。從理論上講,系統(tǒng)越復(fù)雜,就越容易失敗,恢復(fù)也越困難。最后,數(shù)據(jù)風(fēng)險(xiǎn)集中化,數(shù)據(jù)集中存儲(chǔ),雖然減少了數(shù)據(jù)冗余,但集中存儲(chǔ)也同樣使數(shù)據(jù)損壞和丟失的風(fēng)險(xiǎn)增加了。一般應(yīng)使這種風(fēng)險(xiǎn)降低到最小程度。12/11/202263中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.數(shù)據(jù)庫(kù)系統(tǒng)的缺點(diǎn)12/10/202222中文Vis1.3.4數(shù)據(jù)庫(kù)技術(shù)的發(fā)展1.第一代數(shù)據(jù)庫(kù)系統(tǒng)第一代數(shù)據(jù)庫(kù)系統(tǒng)是20世紀(jì)70年代研制的層次數(shù)據(jù)庫(kù)和網(wǎng)狀數(shù)據(jù)庫(kù)系統(tǒng)。1969年,IBM公司研制了基于層次模型的數(shù)據(jù)庫(kù)管理系統(tǒng)IMS(InformationManagementSystem)。美國(guó)數(shù)據(jù)庫(kù)系統(tǒng)語(yǔ)言協(xié)會(huì)CODASYL(ConferenceOnDataSystemLanguage)下屬的數(shù)據(jù)庫(kù)任務(wù)組DBTG(DataBaseTaskGroup)對(duì)網(wǎng)絡(luò)數(shù)據(jù)庫(kù)方法進(jìn)行了系統(tǒng)探討,于20世紀(jì)60年代末70年代初提出了若干報(bào)告,稱為DBTG報(bào)告。DBTG報(bào)告確定并建立了網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng)的許多概念、方法和技術(shù)。它是網(wǎng)絡(luò)數(shù)據(jù)庫(kù)的典型代表。在DBTG方法和思想的指引下,網(wǎng)絡(luò)數(shù)據(jù)庫(kù)系統(tǒng)的實(shí)現(xiàn)技術(shù)不斷成熟,出現(xiàn)了許多商品化的網(wǎng)絡(luò)數(shù)據(jù)庫(kù)管理系統(tǒng)。12/11/202264中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.3.4數(shù)據(jù)庫(kù)技術(shù)的發(fā)展12/10/202223中文2.第二代數(shù)據(jù)庫(kù)系統(tǒng)第二代數(shù)據(jù)庫(kù)系統(tǒng)是關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng)。1970年IBM公司SanJose研究實(shí)驗(yàn)室的研究員E.F.Codd發(fā)表了題為“大型共享數(shù)據(jù)庫(kù)的關(guān)系模型”的論文,提出了關(guān)系數(shù)據(jù)模型,開創(chuàng)了關(guān)系數(shù)據(jù)庫(kù)方法和關(guān)系數(shù)據(jù)庫(kù)理論,為關(guān)系數(shù)據(jù)庫(kù)技術(shù)奠定了理論基礎(chǔ)。70年代是關(guān)系數(shù)據(jù)庫(kù)理論研究和原型系統(tǒng)開發(fā)的時(shí)代,其中以IBMSanJose實(shí)驗(yàn)室開發(fā)的SystemR和Berkeley加利福尼大學(xué)研究的IN-GRES為典型代表。經(jīng)過(guò)大量的高層次研究和開發(fā),關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)的研究取得了一系列的成果,主要包括:奠定了關(guān)系模型的理論基礎(chǔ);提出了關(guān)系數(shù)據(jù)語(yǔ)言;研制了大量的關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)原型,攻克了在系統(tǒng)實(shí)現(xiàn)中查詢優(yōu)化、并發(fā)控制、故障恢復(fù)等一系列關(guān)鍵技術(shù)。

12/11/202265中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.第二代數(shù)據(jù)庫(kù)系統(tǒng)12/10/202224中文Vis20世紀(jì)70年代后期,關(guān)系數(shù)據(jù)庫(kù)從實(shí)驗(yàn)室走向了社會(huì)。因此,計(jì)算機(jī)領(lǐng)域中很多人把20世紀(jì)70年代稱為關(guān)系數(shù)據(jù)庫(kù)時(shí)代。到20世紀(jì)80年代幾乎所有新開發(fā)的數(shù)據(jù)庫(kù)系統(tǒng)均是關(guān)系型的。這些數(shù)據(jù)庫(kù)系統(tǒng)的運(yùn)行,使數(shù)據(jù)庫(kù)技術(shù)日益廣泛地應(yīng)用到企業(yè)管理、情報(bào)檢索、輔助決策等各個(gè)方面,成為信息系統(tǒng)和多計(jì)算機(jī)應(yīng)用系統(tǒng)的重要基礎(chǔ)。12/11/202266中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程20世紀(jì)70年代后期,關(guān)系數(shù)據(jù)庫(kù)從實(shí)驗(yàn)室走向了社會(huì)。3.第三代數(shù)據(jù)庫(kù)系統(tǒng)20世紀(jì)80年代以來(lái),數(shù)據(jù)庫(kù)技術(shù)在商業(yè)領(lǐng)域的巨大成就刺激了其他領(lǐng)域?qū)?shù)據(jù)庫(kù)需求的迅速增長(zhǎng)。例如,計(jì)算機(jī)輔助設(shè)計(jì)與制造、計(jì)算機(jī)集成制造系統(tǒng)、辦公自動(dòng)化和面向?qū)ο蟪绦蛟O(shè)計(jì)環(huán)境等等。這些領(lǐng)域需要的數(shù)據(jù)管理能力有相當(dāng)一部分是傳統(tǒng)數(shù)據(jù)庫(kù)所不能滿足的,例如:(1)復(fù)雜對(duì)象的存儲(chǔ)和處理。復(fù)雜對(duì)象不僅內(nèi)部結(jié)構(gòu)復(fù)雜,相互之間的聯(lián)系也很復(fù)雜。(2)復(fù)雜數(shù)據(jù)類型的支持。復(fù)雜數(shù)據(jù)類型包括抽象數(shù)據(jù)類型、無(wú)結(jié)構(gòu)的超長(zhǎng)數(shù)據(jù)、時(shí)間、圖形、圖像、聲音和版本數(shù)據(jù)等。(3)數(shù)據(jù)、對(duì)象、知識(shí)的統(tǒng)一管理。(4)長(zhǎng)事務(wù)和嵌套事務(wù)的處理。(5)程序設(shè)計(jì)語(yǔ)言和數(shù)據(jù)庫(kù)語(yǔ)言無(wú)間隙的集成。(6)巨型數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)可超過(guò)10的12次方字節(jié))的管理。

12/11/202267中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.第三代數(shù)據(jù)庫(kù)系統(tǒng)12/10/202226中文Vis1.4關(guān)系數(shù)據(jù)庫(kù)1.4.1關(guān)系數(shù)據(jù)庫(kù)概述1.關(guān)系模型的基本概念(1)字段(Field)。信息世界中的“屬性”一詞,在數(shù)據(jù)世界中使用數(shù)據(jù)項(xiàng)一詞進(jìn)行描述。從數(shù)據(jù)庫(kù)的角度講,數(shù)據(jù)項(xiàng)就是字段。從表格的角度講,字段稱為列。通常使用字段這一名詞比較通俗。字段和屬性一樣,也用型和值表示。由此可見,字段與屬性、列、數(shù)據(jù)項(xiàng)這些術(shù)語(yǔ),所描述的對(duì)象都是相同的,只是在不同角度,所用不同而已。12/11/202268中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4關(guān)系數(shù)據(jù)庫(kù)1.4.1關(guān)系數(shù)據(jù)庫(kù)概述12/10(2)記錄(Record)。字段的有序集合稱為記錄,在關(guān)系模型中,記錄稱為元組。在表中記錄稱為一行。在概念模型也稱為實(shí)體。換句話說(shuō),實(shí)體、記錄、元組和行是不同角度描述同一對(duì)象的不同術(shù)語(yǔ)。記錄也用型和值來(lái)描述。記錄型是字段型的集合。記錄值是字段值的集合。(3)表(Table)。表是關(guān)系數(shù)據(jù)庫(kù)系統(tǒng)中的基本單位,是具有相同性質(zhì)的元組的集合。表也分為型和值,表的型也稱作關(guān)系模型,或者稱為表結(jié)構(gòu),顯然是由一系列屬性所組成。表在關(guān)系模型理論中描述為一個(gè)關(guān)系。(4)關(guān)鍵字(KeyWords)。關(guān)系中能惟一區(qū)分和確定不同記錄的字段或字段組合,稱為關(guān)鍵字。單個(gè)字段組成的關(guān)鍵字稱為單關(guān)鍵字,多個(gè)字段組合的關(guān)鍵字稱為組合關(guān)鍵字。12/11/202269中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(2)記錄(Record)。12/10/202228(5)主關(guān)鍵字。主關(guān)鍵字也稱為主鍵,當(dāng)一個(gè)關(guān)系中有多個(gè)關(guān)鍵字的時(shí)候,可以選中其中一個(gè)關(guān)鍵字作為主關(guān)鍵字。(6)外關(guān)鍵字。在眾多屬性中,如果某個(gè)屬性不是該關(guān)系的主關(guān)鍵字,但卻是另一個(gè)關(guān)系的主關(guān)鍵字,則稱這個(gè)關(guān)鍵字為外關(guān)鍵字。(7)關(guān)系數(shù)據(jù)庫(kù)(RelationDB)。所謂關(guān)系數(shù)據(jù)庫(kù)就是由若干個(gè)表組成的集合。換句話說(shuō),關(guān)系數(shù)據(jù)庫(kù)至少有一個(gè)表,才能稱之為數(shù)據(jù)庫(kù)?,F(xiàn)實(shí)中,關(guān)系數(shù)據(jù)庫(kù)有若干個(gè)表有機(jī)地組合在一起,以滿足某類應(yīng)用系統(tǒng)的需要。

12/11/202270中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(5)主關(guān)鍵字。12/10/202229中文Vis2.關(guān)系模型的特點(diǎn)除了具有一般數(shù)據(jù)庫(kù)的共同的優(yōu)點(diǎn)之外,關(guān)系模型具有如下特點(diǎn):(1)數(shù)據(jù)結(jié)構(gòu)簡(jiǎn)單,操作方便。在關(guān)系模型中使用人們通常使用的表格來(lái)描述,很接近實(shí)際,表間的關(guān)系用公共屬性名表示,沒有指針鏈接,簡(jiǎn)化了數(shù)據(jù)定義,操作也很方便。(2)一體化的數(shù)據(jù)子語(yǔ)言。在其他數(shù)據(jù)庫(kù)系統(tǒng)的DBMS的子語(yǔ)言分為DDL、DML和DSDL,它們各自完成不同的功能,而關(guān)系數(shù)據(jù)子語(yǔ)言將這些功能合為一體,既可進(jìn)行查詢、更新等數(shù)據(jù)操作,又具有數(shù)據(jù)定義和控制功能,在進(jìn)行數(shù)據(jù)操作時(shí)還可以動(dòng)態(tài)地修改數(shù)據(jù)結(jié)構(gòu),使用方便,提高了編程效率。12/11/202271中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程2.關(guān)系模型的特點(diǎn)12/10/202230中文Visu(3)堅(jiān)實(shí)的理論基礎(chǔ)。關(guān)系數(shù)據(jù)模型建立在數(shù)學(xué)概念基礎(chǔ)上,如集合論等,此外還有關(guān)系的規(guī)范化和查詢優(yōu)化等理論,這些研究成果是對(duì)數(shù)據(jù)庫(kù)技術(shù)的研究從經(jīng)驗(yàn)發(fā)展到科學(xué)的高度,給數(shù)據(jù)庫(kù)技術(shù)的進(jìn)一步研究奠定了基礎(chǔ)。(4)面向集合的存取方式。關(guān)系數(shù)據(jù)庫(kù)可以在關(guān)系一級(jí)進(jìn)行運(yùn)算,一次查詢結(jié)果可以得到一組記錄,對(duì)數(shù)據(jù)的其他操作也可以一次多個(gè)元組進(jìn)行,其語(yǔ)言簡(jiǎn)練,非過(guò)程化程度高。此外,關(guān)系數(shù)據(jù)模型有利于開展數(shù)據(jù)庫(kù)其他應(yīng)用,例如關(guān)系數(shù)據(jù)庫(kù)有強(qiáng)大的分解能力,有利于分布式數(shù)據(jù)庫(kù)的實(shí)現(xiàn),它為各種非預(yù)期查詢提供支持,有利于決策支持系統(tǒng)的開發(fā)等等。當(dāng)然關(guān)系數(shù)據(jù)模型也表現(xiàn)出一些不足,其中比較突出的是語(yǔ)義比較貧乏,處理多介質(zhì)非格式化的數(shù)據(jù)(圖像、圖形、聲音等)時(shí)顯得力不從心。另外除了一些大型系統(tǒng)外,多個(gè)關(guān)系間的查詢效率還是比較低的。

12/11/202272中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程(3)堅(jiān)實(shí)的理論基礎(chǔ)。12/10/202231中文3.關(guān)系的基本性質(zhì)表格是日常使用比較廣泛的一種數(shù)據(jù)表示方法,在關(guān)系模型中,將各種實(shí)體之間的聯(lián)系都統(tǒng)一描述成一些二維表,即由若干行和若干列組成的表格。這些表格不但存放著實(shí)體本身的數(shù)據(jù),而且還存放著實(shí)體之間的聯(lián)系。在關(guān)系數(shù)據(jù)庫(kù)中,一個(gè)關(guān)系實(shí)際上也就是一個(gè)二維表,也稱作數(shù)據(jù)表。12/11/202273中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程3.關(guān)系的基本性質(zhì)12/10/202232中文Visu1.4.2關(guān)系表之間的關(guān)聯(lián)類型在一個(gè)關(guān)系數(shù)據(jù)庫(kù)中,若想將依賴于關(guān)系模型建立的多個(gè)數(shù)據(jù)表組織在一起,反映客觀事物數(shù)據(jù)間的多種對(duì)應(yīng)關(guān)系,通常將這些數(shù)據(jù)表放入同一個(gè)數(shù)據(jù)庫(kù)中,并建立表間關(guān)聯(lián)。在同一個(gè)數(shù)據(jù)庫(kù)中,表間關(guān)聯(lián)關(guān)系的關(guān)聯(lián)類型常有一對(duì)一、一對(duì)多和多對(duì)一3種。1.一對(duì)一關(guān)系一對(duì)一關(guān)系即在兩個(gè)數(shù)據(jù)表中選一個(gè)相同屬性字段作為關(guān)鍵字段,把其中一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為主關(guān)鍵字段,該字段值是惟一的,而另一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為外關(guān)鍵字段,該字段值也是惟一的。即A表中的每一條記錄在B表中僅能有一個(gè)匹配記錄,同樣在B表中的每一條記錄也只能在A表中有一個(gè)匹配記錄。

12/11/202274中文VisualFoxPro9.0數(shù)據(jù)庫(kù)應(yīng)用與開發(fā)教程1.4.2關(guān)系表之間的關(guān)聯(lián)類型12/10/202233中2.一對(duì)多關(guān)系一對(duì)多關(guān)系,即在兩個(gè)數(shù)據(jù)表中選一個(gè)相同屬性字段作為關(guān)鍵字段,把其中一個(gè)數(shù)據(jù)表的關(guān)鍵字段稱為主關(guān)鍵字段,該字段值是惟一的,而把另一個(gè)數(shù)據(jù)表中的關(guān)鍵字段稱為外關(guān)鍵字段,該字段值是重復(fù)的。即A表中的一條記錄能與B表中的多

溫馨提示

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

評(píng)論

0/150

提交評(píng)論