數(shù)據(jù)庫系統(tǒng)講義_第1頁
數(shù)據(jù)庫系統(tǒng)講義_第2頁
數(shù)據(jù)庫系統(tǒng)講義_第3頁
數(shù)據(jù)庫系統(tǒng)講義_第4頁
數(shù)據(jù)庫系統(tǒng)講義_第5頁
已閱讀5頁,還剩31頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

《數(shù)據(jù)庫技術(shù)及應(yīng)用》

第一講數(shù)據(jù)庫技術(shù)基礎(chǔ)

(一)數(shù)據(jù)管理技術(shù)的進(jìn)展

數(shù)據(jù)管理技術(shù)的進(jìn)展,與硬件(主要是外存)、軟件、計(jì)算機(jī)應(yīng)用的范圍有親

密聯(lián)系。數(shù)據(jù)管理技術(shù)的進(jìn)展經(jīng)受了三個(gè)階段:人工階段、文件系統(tǒng)階段和數(shù)據(jù)

庫階段。

1.人工階段(20世紀(jì)50年月中期以前)

數(shù)據(jù)管理特點(diǎn)為:

?數(shù)據(jù)不保存在機(jī)器中

?沒有專用的軟件對(duì)數(shù)據(jù)進(jìn)行管理

?只有程序的概念,沒有文件的概念

?數(shù)據(jù)面對(duì)應(yīng)用

2.文件系統(tǒng)階段(20世紀(jì)50年月后期至60年月中期)

數(shù)據(jù)管理的特點(diǎn)為:

?數(shù)據(jù)可長期保存在外存的磁盤上

?數(shù)據(jù)的規(guī)律結(jié)構(gòu)與物理結(jié)構(gòu)有了區(qū)分

?文件組織已呈現(xiàn)多樣化,有索引文件、鏈接文件和散列文件等

?數(shù)據(jù)不再屬于某個(gè)特定的程序,可以重復(fù)使用

3.數(shù)據(jù)庫階段(20世紀(jì)60年月末開頭至今)

數(shù)據(jù)管理的特點(diǎn)為:

?采納簡單的數(shù)據(jù)模型表示數(shù)據(jù)結(jié)構(gòu)

?有較高的數(shù)據(jù)獨(dú)立性

?數(shù)據(jù)庫系統(tǒng)為用戶供應(yīng)便利的用戶接口,用戶可以使用查詢語言

或終端命令操作數(shù)據(jù)庫,也可以用程序方式操作數(shù)據(jù)庫

?系統(tǒng)供應(yīng)數(shù)據(jù)庫的恢復(fù)、并發(fā)掌握數(shù)據(jù)完整性和數(shù)據(jù)平安性四個(gè)

方面的數(shù)據(jù)掌握功能,以保證數(shù)據(jù)庫是平安的、正確的和牢靠的;對(duì)數(shù)

據(jù)的操作可以以紀(jì)錄為單位,也可以以數(shù)據(jù)項(xiàng)為單位

(二)數(shù)據(jù)描述

1.在數(shù)據(jù)處理中,數(shù)據(jù)描述將涉及三個(gè)領(lǐng)域:現(xiàn)實(shí)世界、信息世界和機(jī)器

世界。

?現(xiàn)實(shí)世界是存在于人們頭腦之外的客觀世界

?信息世界是現(xiàn)實(shí)世界在人們頭腦中的反映,人們把它用文字和符

號(hào)登記載下來。信息世界中數(shù)據(jù)描述的述術(shù)語有實(shí)體、實(shí)體集、屬性和

實(shí)體標(biāo)識(shí)符

?機(jī)器世界中信息世界的信息以數(shù)據(jù)形式存儲(chǔ)。機(jī)器世界中數(shù)據(jù)描

述的術(shù)語有字段、紀(jì)錄、文件和關(guān)鍵碼。

機(jī)器世界中的術(shù)語和信息世界中的術(shù)語有對(duì)應(yīng)關(guān)系。在數(shù)據(jù)庫中,每個(gè)

概念都有類型

和值的區(qū)分,類型是概念的內(nèi)涵,而值是概念的外延。

2.數(shù)據(jù)描述有物理描述和規(guī)律描述兩種形式。

?物理數(shù)據(jù)描述是指數(shù)據(jù)在存儲(chǔ)設(shè)施上的存儲(chǔ)方式。物理數(shù)據(jù)是實(shí)

際存放在存儲(chǔ)設(shè)施上的數(shù)據(jù);

?規(guī)律數(shù)據(jù)描述是指程序員或用戶用以操作的數(shù)據(jù)形式,是抽象的

概念化數(shù)據(jù)。

3.依據(jù)訪問數(shù)據(jù)的速度、成本和牢靠性,計(jì)算機(jī)系統(tǒng)的存儲(chǔ)介質(zhì)分為六類:

高速緩沖存儲(chǔ)器、主存儲(chǔ)器、快擦寫存儲(chǔ)器、磁盤存儲(chǔ)器、光存儲(chǔ)器和磁帶。存

儲(chǔ)介質(zhì)組成了計(jì)算機(jī)系統(tǒng)的三個(gè)存儲(chǔ)層次:基本存儲(chǔ)器、幫助存儲(chǔ)器(聯(lián)機(jī)存儲(chǔ)

器)和第三級(jí)存儲(chǔ)器(脫機(jī)存儲(chǔ)器)。物理存儲(chǔ)中的數(shù)據(jù)描述的術(shù)語有:位、字節(jié)、

字、塊、桶和卷。

(三)數(shù)據(jù)模型

數(shù)據(jù)模型一一表示實(shí)體類型及實(shí)體間聯(lián)系的模型。

目前廣泛使用的數(shù)據(jù)模型可分為兩種類型:概念數(shù)據(jù)模型和結(jié)構(gòu)數(shù)據(jù)模型

1.概念數(shù)據(jù)模型

概念數(shù)據(jù)模型是指獨(dú)立于計(jì)算機(jī)系統(tǒng)的模型,完全不涉及信息在系統(tǒng)中的表

示,只是用來描述某個(gè)特定組織所關(guān)懷的信息結(jié)構(gòu)。這一類中聞名的模型是“實(shí)

體聯(lián)系模型",簡稱ER模型。ER模型是直接從現(xiàn)實(shí)世界中抽象出實(shí)體類型及實(shí)

體間聯(lián)系,然后用ER圖表示的數(shù)據(jù)模型。ER圖包括四個(gè)基本成分:矩形框、菱

形框、橢圓形框和直線。

2.結(jié)構(gòu)數(shù)據(jù)模型

(四)數(shù)據(jù)庫的體系結(jié)構(gòu)

1.數(shù)據(jù)庫具有概念模式、外模式、內(nèi)模式三級(jí)結(jié)構(gòu)和外模式/膜式映象、模

式/內(nèi)模式映象兩級(jí)映象。

(1)概念模式

概念模式是對(duì)數(shù)據(jù)庫中全部數(shù)據(jù)的整體規(guī)律結(jié)構(gòu)的描述,它由若干個(gè)概念紀(jì)

錄類型組成。

(2)外模式

外模式是用戶與數(shù)據(jù)庫的接口,是用戶用到的那部分?jǐn)?shù)據(jù)的描述,它由若干

個(gè)外部記類

型組成。

(3)內(nèi)模式

內(nèi)模式是數(shù)據(jù)庫在物理存儲(chǔ)方面的描述,定義全部的內(nèi)部紀(jì)錄類型、索引和

文件的組織方式,以及數(shù)據(jù)掌握方面的細(xì)節(jié)。

(4)外模式/模式映象

它存在于外部級(jí)和概念級(jí)之間,用于定義外模式和概念模式間的對(duì)應(yīng)性,一

般在外模式中描述。

(5)模式/內(nèi)模式映象

存在于概念級(jí)和內(nèi)部級(jí)之間,用于定義概念模式和內(nèi)模式間的對(duì)應(yīng)性,一般

在內(nèi)模式中描述。

2.數(shù)據(jù)庫系統(tǒng)具有數(shù)據(jù)獨(dú)立性的特點(diǎn)。數(shù)據(jù)獨(dú)立性分為物理數(shù)據(jù)獨(dú)立性和

規(guī)律數(shù)據(jù)獨(dú)立性兩級(jí)。

(1)物理數(shù)據(jù)獨(dú)立性

是指對(duì)內(nèi)模式的修改盡量不影響概念模式,當(dāng)然對(duì)于外模式和應(yīng)用程序的影

響更小。

(2)規(guī)律數(shù)據(jù)獨(dú)立性

是指對(duì)概念模式的修改盡量不影響外模式和應(yīng)用程序。

3.用戶

用戶是指使用數(shù)據(jù)庫的應(yīng)用程序或聯(lián)機(jī)終端用戶。數(shù)據(jù)庫管理系統(tǒng)供應(yīng)數(shù)據(jù)

操縱語言(DNL)讓用戶或程序員使用。依據(jù)使用方式的不同,DML可分類自含型

DML(又稱交互型DML)和嵌入型DML(又稱宿主型DML)兩類。宿主語言是指編寫應(yīng)

用程序的語言。用戶界面是用戶和數(shù)據(jù)庫系統(tǒng)間的一條分界線。

(五)數(shù)據(jù)庫管理系統(tǒng)

數(shù)據(jù)庫管理系統(tǒng)(DBMS)是指數(shù)據(jù)庫系統(tǒng)中管理數(shù)據(jù)的軟件系統(tǒng)。DBMS是數(shù)

據(jù)庫系統(tǒng)的核心組成部分。對(duì)數(shù)據(jù)庫的一切操作,包括定義、查詢、更新及各種

掌握,都是通過DBMS進(jìn)行的。DBMS的主要功能有:

①數(shù)據(jù)庫的定義功能:DBMS供應(yīng)數(shù)據(jù)定義語言定義數(shù)據(jù)庫的三級(jí)結(jié)構(gòu),

包括外模式、概念模式、內(nèi)模式及其相互之間的映象,定義數(shù)據(jù)的完整性、

完全掌握等約束。

②數(shù)據(jù)庫的操縱功能:DBMS供應(yīng)數(shù)據(jù)操縱語言實(shí)現(xiàn)對(duì)數(shù)據(jù)庫中數(shù)據(jù)的

操作

③數(shù)據(jù)庫的愛護(hù)功能:DBMS對(duì)數(shù)據(jù)庫的愛護(hù)主要通過數(shù)據(jù)庫的恢復(fù)、

數(shù)據(jù)庫的并發(fā)掌握、數(shù)據(jù)庫的完整掌握等四個(gè)方面實(shí)現(xiàn)。

④數(shù)據(jù)庫的存儲(chǔ)管理:DBMS的存儲(chǔ)管理子系統(tǒng)供應(yīng)了數(shù)據(jù)庫中數(shù)據(jù)和

應(yīng)用程序的一個(gè)界面,其職責(zé)是把各種DML語句轉(zhuǎn)換成低層的文件系統(tǒng)命令,

起到數(shù)據(jù)的存儲(chǔ)、檢索和更新的作用。

⑤數(shù)據(jù)庫的維護(hù)功能:DBMS中實(shí)現(xiàn)數(shù)據(jù)庫維護(hù)功能的有用程序主要有

數(shù)據(jù)裝載程序、備份程序、文件重組織程序和性能監(jiān)控程序。

⑥數(shù)據(jù)字典(DD):數(shù)據(jù)庫系統(tǒng)中存放三級(jí)結(jié)構(gòu)定義的數(shù)據(jù)庫稱為數(shù)據(jù)

字典,對(duì)數(shù)據(jù)庫的操作都要通過訪問DD才能實(shí)現(xiàn)。

說明:從模塊結(jié)構(gòu)觀看,DBMS有查詢處理器和存儲(chǔ)處理器兩大部分

組成。用戶訪問數(shù)據(jù)的過程即是應(yīng)用程序通過DBMS讀取寫人數(shù)據(jù)庫中紀(jì)

錄的過程。

(六)數(shù)據(jù)庫系統(tǒng)

數(shù)據(jù)庫系統(tǒng)是一個(gè)實(shí)際可運(yùn)行的,依據(jù)數(shù)據(jù)庫方法存儲(chǔ)、維護(hù)和向應(yīng)用系統(tǒng)

供應(yīng)數(shù)據(jù)支持的系統(tǒng),它是數(shù)據(jù)庫、硬件、軟件和數(shù)據(jù)庫管理員(DBA)的集合體。

數(shù)據(jù)庫是與一個(gè)特定組織各項(xiàng)應(yīng)用有關(guān)的全部數(shù)據(jù)的集合,它包括物理數(shù)據(jù)

庫和描述數(shù)據(jù)庫兩大部分。硬件包括中心處理機(jī)、內(nèi)存、外存、輸入設(shè)施、數(shù)據(jù)

通道等硬件設(shè)施。軟件包括DBMS、OS、各種宿主語言和應(yīng)用開發(fā)支撐軟件等程

序。

DBA是掌握數(shù)據(jù)整體結(jié)構(gòu)的人,負(fù)責(zé)DBS的正常運(yùn)行。

依據(jù)模塊結(jié)構(gòu)劃分,DBS的全局結(jié)構(gòu)如下:

①數(shù)據(jù)庫用戶。包括四類,即DBA、專業(yè)用戶、應(yīng)用程序員、最終用戶

②DBMS的查詢處理器。包括四部分,即DML編譯器、嵌入型DML的預(yù)

編譯器、DDL編譯器、查詢運(yùn)行核心程序

③DBMS的存儲(chǔ)管理器。包括四部分,即授權(quán)和完整性管理器、事務(wù)管

理器、文件管理器、緩沖管理器

④磁盤存儲(chǔ)器中的數(shù)據(jù)結(jié)構(gòu):包括四種形式,即數(shù)據(jù)文件、數(shù)據(jù)字典、

索引文件、統(tǒng)計(jì)數(shù)據(jù)組織。

在應(yīng)用中,DBS的效益具體表現(xiàn)在七個(gè)方面,即敏捷性、簡易性、面對(duì)用戶、

數(shù)據(jù)掌握、程序設(shè)計(jì)便利使應(yīng)用系統(tǒng)的開發(fā)速度加快、削減了程序維護(hù)的工作量、

標(biāo)準(zhǔn)化。

其次講關(guān)系數(shù)據(jù)庫系統(tǒng)

(一)關(guān)系數(shù)堀庫系統(tǒng)概還

1.關(guān)系數(shù)據(jù)庫系統(tǒng)

關(guān)系數(shù)據(jù)庫系統(tǒng)是支持關(guān)系數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng)。

30年來,關(guān)系數(shù)據(jù)庫系統(tǒng)的爭論取得了輝煌的成就。關(guān)系方法從試驗(yàn)室走

向了社會(huì),涌現(xiàn)出很多性能良好的商品化關(guān)系數(shù)據(jù)庫管理系統(tǒng)(ROBMS)。如聞名

的IBMDB2,Oracle,Ingres,SYBASE,Informix等。數(shù)據(jù)庫的應(yīng)用領(lǐng)域快速擴(kuò)

大。

2.關(guān)系數(shù)據(jù)模型

關(guān)系數(shù)據(jù)模型由關(guān)系數(shù)據(jù)結(jié)構(gòu)、關(guān)系操作集合和關(guān)系完整性約束3大要素組

成。

(二)關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)

1.關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)和基本術(shù)語

(1)關(guān)系(relation):一個(gè)關(guān)系對(duì)應(yīng)一個(gè)二維表,二維表名就是關(guān)系名。

(2)屬性(attribute)和值域(domain):在二維表中的列(字段),稱為屬

性。屬性的個(gè)數(shù)稱為關(guān)系的元數(shù),列的值稱為屬性值;屬性值的取值范圍稱

為值域。

(3)關(guān)系模式(relationschema):在二維表中的行定義(紀(jì)錄的型),即

對(duì)關(guān)系的描述稱為關(guān)系模式,一般表示為:

關(guān)系名(屬性1,屬性2,…,屬性n)

(4)元組(tuple):在二維表中的一行(紀(jì)錄的值),稱為一個(gè)元組。關(guān)系

模式和元組的集合通稱為關(guān)系。

(5)重量(component):元組中的一個(gè)屬性值

(6)候選碼(candidatekey)或候選鍵:假如在一個(gè)關(guān)系中,存在多個(gè)屬

性(或?qū)傩越M合)都能用來惟一標(biāo)識(shí)該關(guān)系的元組,這些屬性(或?qū)傩越M合)

都稱為該關(guān)系的候選碼或候選鍵。

(7)主碼(primarykey)或主鍵:在一個(gè)關(guān)系的若干個(gè)候選碼中指定一個(gè)用來

惟一標(biāo)識(shí)該關(guān)系的元組,這個(gè)被指定的候選碼稱為該關(guān)系的主碼或主鍵。

(8)主屬性(primaryattribute)和非主屬性(nonprimaryattribute):關(guān)

系中包含在任何一個(gè)侯選碼中的屬性稱為主屬性或碼屬性,不包含在任何一

個(gè)候選碼中的屬性稱為非主屬性或非碼屬性。

(9)外碼(foreignkey)或外鍵:當(dāng)關(guān)系中的某個(gè)屬性(或?qū)傩越M)雖然不

是該關(guān)系的主碼或只是主碼的一部分,但卻是另一個(gè)關(guān)系的主碼時(shí),稱該屬

性(或?qū)傩越M)為這個(gè)關(guān)系的外碼。

(10)參照關(guān)系(referencingrelation)與被參照關(guān)系

(targetrelation):參照關(guān)系也稱從關(guān)系,被參照關(guān)系也稱主關(guān)系,它們是

指以外碼相關(guān)聯(lián)的兩個(gè)關(guān)系。以外碼作為主碼的關(guān)系成為被參照關(guān)系;外碼

所在的關(guān)系稱為參照關(guān)系。

(見P54“概論”)

2.關(guān)系的形式定義和關(guān)系數(shù)據(jù)庫對(duì)關(guān)系的限定

(1)關(guān)系的形式定義

(2)關(guān)系數(shù)據(jù)庫對(duì)關(guān)系的限定

①每一個(gè)屬性是不行分解的。

②每一個(gè)關(guān)系模式中屬性的數(shù)據(jù)類型以及屬性的個(gè)數(shù)是固定的,并

且每個(gè)屬性必需命名,在同一個(gè)關(guān)系模式中,屬性名必需是不同的。

③每一個(gè)關(guān)系僅僅有一種紀(jì)錄類型,即一種關(guān)系模式。

④在關(guān)系中元組的挨次(即行序)是無關(guān)緊要的。

⑤在關(guān)系中屬性的挨次可任意交換,交換時(shí)應(yīng)連同屬性名一起交換才行,

否則挨次是重要的。

⑥同一個(gè)關(guān)系中不允許消失完全相同的元組。

(三)關(guān)系模型的完整性約束

1.數(shù)據(jù)庫數(shù)據(jù)完整性規(guī)章的分類

數(shù)據(jù)完整性由完整性規(guī)章來定義,關(guān)系模型的完整性規(guī)章是對(duì)關(guān)系的某種約

束條件。關(guān)系模型中可以有三類完整性約束:實(shí)體完整性、參照完整性和用戶定

義的完整性。

2.實(shí)體完整性規(guī)章

實(shí)體完整性規(guī)章是對(duì)關(guān)系中的主屬性值的約束o

3.參照完整性規(guī)章

現(xiàn)實(shí)世界中的實(shí)體之間往往存在某種聯(lián)系,在關(guān)系模型中實(shí)體及實(shí)體間的聯(lián)

系都是用關(guān)系來描述的,這樣就自然存在著關(guān)系與關(guān)系之間的參照(引用)。

4.用戶定義的完整性

用戶定義的完整性通常是定義對(duì)關(guān)系中除主碼與外碼屬性外的其他屬性取

值的約束,即對(duì)其他屬性的值域的約束。

對(duì)屬性的值域的約束也稱為域完整性規(guī)章(domainintegrityrule),是對(duì)關(guān)

系中屬性取值

的正確性限制,包括數(shù)據(jù)類型、精度、取值范圍、是否允許空值等。取值范

圍又可分為靜態(tài)定義和動(dòng)態(tài)定義兩種:

?靜態(tài)定義取值范圍是指屬性的值域范圍是固定的,可從定義值的集

合中提取特定值;

?動(dòng)態(tài)定義取值范圍是指屬性的值域范圍依靠于另一個(gè)或多個(gè)其他屬

性的值。

(四)關(guān)系代數(shù)

關(guān)系代數(shù)的運(yùn)算可分為兩類:

①傳統(tǒng)的集合運(yùn)算這類運(yùn)算將關(guān)系看成是元組的集合,其運(yùn)算是從關(guān)系的

“水平”方向,即行的角度來進(jìn)行的,有:并、交、差、廣義笛卡爾積。

②特地的關(guān)系運(yùn)算這類運(yùn)算不僅涉及行而且涉及列,有:選擇、投影、連接、

除。

1.傳統(tǒng)的集合運(yùn)算

傳統(tǒng)的集合運(yùn)算是二目運(yùn)算,包括并、交、差、廣義笛卡爾積4種運(yùn)算。

2.特地的關(guān)系運(yùn)算

特地的關(guān)系運(yùn)算主要包括:對(duì)單個(gè)關(guān)系進(jìn)行垂直分解(投影操作)或水平分解

(選擇操作)和對(duì)多個(gè)關(guān)系的結(jié)合(連接操作)等。

第三講關(guān)系數(shù)據(jù)庫標(biāo)準(zhǔn)語言SQL

(一)SQL概述

關(guān)系數(shù)據(jù)庫SOL語言是介乎于關(guān)系代數(shù)和元組演算之間的一種語言,廣泛應(yīng)

用于商用系統(tǒng)中,是關(guān)系數(shù)據(jù)庫的標(biāo)準(zhǔn)語言。SQL是SEQUEL的簡稱,其前身是

SQUARE語言。

SQL數(shù)據(jù)庫的體系結(jié)構(gòu)基本上也是三級(jí)結(jié)構(gòu)。在SOL中,關(guān)系模式稱為“基

本表”,存儲(chǔ)模式稱為“存儲(chǔ)文件”,子模式稱為“視圖”。

SQL數(shù)據(jù)庫的體系結(jié)構(gòu)有六個(gè)要點(diǎn)。

SQL主要由數(shù)據(jù)定義、數(shù)據(jù)操縱、數(shù)據(jù)掌握和嵌入式SQL的使用規(guī)定四部分

組成。

(二)SQL的數(shù)據(jù)定義

SOL的數(shù)據(jù)定義部分也稱為“SQLDDL',,用于定義SQL模式、基本表、視圖

和索引。該部分包括對(duì)SQL模式、基本表、視圖和索引的創(chuàng)建和撤消操作。

SQL的數(shù)據(jù)定義語句有:SQL的模式創(chuàng)建語句和撤消語句,基本表的創(chuàng)建、

修改和撤消語句,視圖的創(chuàng)建和撤消語句,索引的創(chuàng)建和撤消語句。

SQL供應(yīng)的數(shù)據(jù)類型主要有數(shù)值型、字符串型、位串型和時(shí)間型四種。SQL

允許在這四種域上執(zhí)行比較操作,但算術(shù)操作只限于數(shù)值型。SQL2允許用戶使

用“CREATEDOMAIN”語句定義新的域。

(三)數(shù)據(jù)查詢

SQL的數(shù)據(jù)查詢屬于SOL的數(shù)據(jù)操縱部分,即“SQLDML”部分。SOL的數(shù)據(jù)查

詢用SELECT語句來實(shí)現(xiàn)。

SELECT語句能表達(dá)全部的關(guān)系代數(shù)表達(dá)式。假如一個(gè)查詢涉及多個(gè)基本表,

則SELECT語句可有多種寫法,即嵌套查詢、聯(lián)接查詢、使用存在量詞的嵌

套查詢等。

SELECT語句完整的句法如下:

SELECT目標(biāo)表的列名或列表達(dá)式序列

FROM基本表和(或)視圖序列

[WHERE行條件表達(dá)式]

[GROUPBY列名序列]

[HAVING組條件表達(dá)式]

[ORDERBY列名[ASC|DESC]…]

其執(zhí)行過程為:

(1)讀取FROM子句中基本表、視圖的數(shù)據(jù),執(zhí)行笛卡爾積操作;

(2)選取滿意WHERE子句中給出的行條件表達(dá)式的元組;

(3)按GROUP子句中指定列的值分組,同時(shí)提取滿意HAVING子句中組條

件表達(dá)式的那些組;

(4)按SELECT子句中給出的列名或列表達(dá)式求值輸出;

(5)ORDER子句對(duì)輸出的目標(biāo)表進(jìn)行排列。

(四)SOL的數(shù)據(jù)更新

SQL的數(shù)據(jù)更新也屬于SQL的數(shù)據(jù)操縱部分,包括數(shù)據(jù)插入、刪除和修

改三種操作?;颈淼臄?shù)據(jù)更新語句包括:元組值的插入語句,查詢結(jié)果的

插入語句,數(shù)據(jù)的刪除語

句和修改語句。

對(duì)于視圖元組的更新操作有三條規(guī)章:

(1)假如一個(gè)視圖是從多個(gè)基本表使用聯(lián)接操作導(dǎo)出的,則不允許對(duì)這個(gè)視

圖執(zhí)行更新操作;(2)假如在導(dǎo)出視圖的過程中,使用了分組和聚合操作,則不

允許對(duì)這個(gè)視圖執(zhí)行更新操作;(3)假如視圖是從單個(gè)基本表使用選擇、投影操

作導(dǎo)出的,并且包含了基本表的主鍵或某個(gè)

候選鍵,那么這樣的視圖稱為“行列子集視圖”,并且可以被執(zhí)行更新操作。

SQL2中,允許更新的視圖在定義時(shí),必需加—YWITHCHECKOPTION”短語。

(五)嵌入式SOL

SQL語言有兩種方式:一種是在終端交互方式下使用,稱為交互式SQL;另

一種是嵌入在高級(jí)語言的程序中使用,稱為嵌入式SQL。嵌入式SQL的實(shí)現(xiàn)有兩

種處理方式:一種是擴(kuò)充宿主語言的編譯程序,使之能處理SQL語句;另一種是

采納預(yù)處理方式。目前多數(shù)系統(tǒng)采納預(yù)處理方式。

在嵌入式SQL中,共享變量是SQL和宿主語言的接口。SQL2規(guī)定,SQLSTATE

是一個(gè)特別的共享變量,起著解釋SQL語言執(zhí)行狀況的作用。

在宿主語言的程序中使用SQL語句有以下規(guī)定:

(1)在程序中要區(qū)分SQL語言與宿主語句。全部SQL語句前必需加上前

綴標(biāo)識(shí)"EXECSQL’,并以"ENDEXEC”作為語句結(jié)束標(biāo)志。結(jié)束標(biāo)志在不同的宿

主語言中是不同的。

(2)允許嵌入的SQL語句引用宿主語言的程序變量,但在引用時(shí),這些

變量前必需加昌號(hào)“:”作為前綴標(biāo)識(shí),以示與數(shù)據(jù)庫中變量有區(qū)分,而且這

些變量必需先由宿主語言的程序定義,并用SQL的DECLARE語句說明。

(3)用游標(biāo)機(jī)制協(xié)調(diào)SQL的集合處理方式與宿主語言單紀(jì)錄處理方式。

與游標(biāo)有關(guān)的SQL語句有四個(gè),即游標(biāo)定義語句、游標(biāo)打開語句、游標(biāo)推動(dòng)

語句、游標(biāo)關(guān)閉語句。

SQLDDL語句,只要加上前綴標(biāo)識(shí)"EXECSQL”和結(jié)束標(biāo)志"ENDEXEC”就能嵌入

在宿主語言程序中使用。而SQLDML語句在嵌入使用時(shí),還要留意是否使用了游

標(biāo)機(jī)制。

(1)若是INSERT,DELETE和UPDATE語言,則不必涉及游標(biāo),只要加上前

綴標(biāo)識(shí)和結(jié)束標(biāo)志就能嵌入在宿主語言程序中使用。

(2)若是已知查詢結(jié)果確定是單元組的SLLECT語句,則不必涉及游標(biāo),

也可加上前綴標(biāo)識(shí)和結(jié)束標(biāo)志后嵌入在宿主語言程序中使用,但此時(shí)應(yīng)當(dāng)在

SELECT語句中增加一個(gè)INTO子句,指出找到的值應(yīng)送到相應(yīng)的共享變量中

去。

(3)若是已知查詢結(jié)果為多個(gè)元組的SELECT語句,則必需涉及到游標(biāo),

用游標(biāo)機(jī)制把多個(gè)元組一次一個(gè)地傳送給宿主語言程序處理。

游標(biāo)在推動(dòng)時(shí)只能沿查詢結(jié)果中元組挨次從頭到尾一行行推動(dòng),并且不能返

回,這給使用帶來不便。為此,SQL2供應(yīng)了卷游標(biāo)技術(shù)來解決這一問題。卷游

標(biāo)在推動(dòng)時(shí)可以進(jìn)退自如。

第四講關(guān)系數(shù)據(jù)庫的法律規(guī)范化理論與數(shù)據(jù)庫設(shè)計(jì)

(一)關(guān)系模式的設(shè)計(jì)問題

給出一組數(shù)據(jù),如何構(gòu)造一個(gè)適合于它們的數(shù)據(jù)庫模式,這是數(shù)據(jù)庫設(shè)計(jì)的

問題。

關(guān)系數(shù)據(jù)庫設(shè)計(jì)理論主要包括三個(gè)方面的內(nèi)容:數(shù)據(jù)依靠,范式,模式設(shè)計(jì)

方法。其中數(shù)據(jù)依靠起著核心作用。

把現(xiàn)實(shí)問題的全部屬性組成一個(gè)關(guān)系模式,記為R(U),它由屬性集U和U

上成立的數(shù)據(jù)完整性約束集組成。關(guān)系r是關(guān)系模式R(U)的當(dāng)前值,是一個(gè)元

組的集合。這里的關(guān)系模式和關(guān)系一般稱為泛關(guān)系模式和泛關(guān)系。用一個(gè)關(guān)系模

式的集合P={R1,R2,ooo,RJ來代替R,其中每個(gè)Ri(IWiWk)的屬性是U的子

集。這里的P稱為數(shù)據(jù)庫模式。對(duì)數(shù)據(jù)庫模式的每一個(gè)關(guān)系模式給予一個(gè)當(dāng)前值,

就得到一個(gè)數(shù)據(jù)庫實(shí)例(簡稱數(shù)據(jù)庫)

泛關(guān)系模式存在的存儲(chǔ)特別問題有:數(shù)據(jù)冗余,更新特別,刪除特別。

(二)函數(shù)依靠

(三)關(guān)系模式的分解特性

(四)關(guān)系模式的范式

(五)數(shù)據(jù)庫設(shè)計(jì)

數(shù)據(jù)庫設(shè)計(jì)是指對(duì)于一個(gè)給定的應(yīng)用環(huán)境,供應(yīng)一個(gè)確定最優(yōu)數(shù)據(jù)模型與處

理模式的規(guī)律設(shè)計(jì),以及一個(gè)確定數(shù)據(jù)庫存儲(chǔ)結(jié)構(gòu)與存取方法的物理設(shè)計(jì),建立

起既能反映現(xiàn)實(shí)世界信息和信息聯(lián)系,滿意用戶數(shù)據(jù)要求和加工要求,又能被某

個(gè)數(shù)據(jù)庫管理系統(tǒng)所接受,同時(shí)能實(shí)現(xiàn)系統(tǒng)目標(biāo),并有效存取數(shù)據(jù)的數(shù)據(jù)庫。

(六)規(guī)劃

規(guī)劃階段的主要任務(wù)是進(jìn)行建立數(shù)據(jù)庫的必要性及可行性分析,確定數(shù)據(jù)庫

系統(tǒng)在組織中和信息系統(tǒng)中的地位,以及各個(gè)數(shù)據(jù)庫之間的聯(lián)系。

(七)需求分析

需求分析階段應(yīng)當(dāng)對(duì)系統(tǒng)的整個(gè)應(yīng)用狀況作全面的、具體的調(diào)查,確定企業(yè)

組織的目標(biāo),收集支持系統(tǒng)總的設(shè)計(jì)目標(biāo)的基礎(chǔ)數(shù)據(jù)和對(duì)這些數(shù)據(jù)的要求,確定

用戶的需求,并把這些要求寫成用戶和數(shù)據(jù)庫設(shè)計(jì)者都能接受的文檔。需求分析

就是把總體信息需求、處理需求以及企業(yè)自身的制約條件等幾方面的因素進(jìn)行綜

合考慮,最終規(guī)劃出一份既切合實(shí)際,又具有遠(yuǎn)見的需求說明書。

需求分析大致分為三步來完成,即需求信息的收集、分析整理和評(píng)審。需求

信息的收集又稱為系統(tǒng)調(diào)查,在調(diào)查爭論之前,要做好充分的預(yù)備工作,要明確

調(diào)查的目的、調(diào)查的內(nèi)容和調(diào)查的形式。需求信息的分析整理包括業(yè)務(wù)流程分析

和分析結(jié)果的描述,業(yè)務(wù)流程分析一般采納數(shù)據(jù)流分析法,分析結(jié)果以數(shù)據(jù)流圖

(DFD)表示,除了DFD以外,還要用一些法律規(guī)范表格進(jìn)行補(bǔ)充描述。評(píng)審的目

的在于確認(rèn)某一階段的任務(wù)是否全部完成,以避開重大的疏漏或錯(cuò)誤。

(八)概念設(shè)計(jì)

概念設(shè)計(jì)的目標(biāo)是產(chǎn)生反映企業(yè)組織信息需求的數(shù)據(jù)庫概念結(jié)構(gòu),即概念模

式。概念模式是獨(dú)立于數(shù)據(jù)庫規(guī)律結(jié)構(gòu),獨(dú)立于支持?jǐn)?shù)據(jù)庫的DBMS,不依靠于

計(jì)算機(jī)系統(tǒng)的。概念設(shè)計(jì)的必要性表現(xiàn)在:

(1)數(shù)據(jù)庫設(shè)計(jì)過程中各階段的任務(wù)相對(duì)單一化,設(shè)計(jì)簡單程度大大降

低,便于組織管理;

(2)不受特定的DBMS的限制,也獨(dú)立于存儲(chǔ)支配和效率方面的考慮,因

而比規(guī)律模式更為穩(wěn)定;

(3)概念模式不含具體的DBMS所附加的技術(shù)細(xì)節(jié),更簡潔為用戶所理解,

因而才有可能精確地反映用戶的信息要求。

(九)規(guī)律設(shè)計(jì)

規(guī)律設(shè)計(jì)的目的是把概念設(shè)計(jì)階段設(shè)計(jì)好的基本ER圖轉(zhuǎn)換為與選用的具體

機(jī)器上的DBMS所支持的數(shù)據(jù)模型相符合的規(guī)律結(jié)構(gòu)(包括數(shù)據(jù)庫模式和外模

式)。這些模式在功能上、完整性和全都性約束及數(shù)據(jù)庫的可擴(kuò)充性等方面均應(yīng)

滿意用戶的各種要求。

在規(guī)律設(shè)計(jì)階段主要輸入如下信息:

(1)獨(dú)立于DBMS的概念模式;

(2)處理需求;

(3)約束條件;

(4)DBMS特性。

在規(guī)律設(shè)計(jì)階段主要輸出如下信息:

(1)DBMS可處理的模式;

(2)子模式;

(3)應(yīng)用程序設(shè)計(jì)指南;

(4)物理設(shè)計(jì)指南。

規(guī)律設(shè)計(jì)的主要步驟有:

(1)初始模式的形成;

(2)子模式設(shè)計(jì)

(3)應(yīng)用程序設(shè)計(jì)梗概;

(4)模式評(píng)價(jià);

(5)修正模式。

ER模型中的主要成分是實(shí)體類型和聯(lián)系類型。在ER模型向關(guān)系模型轉(zhuǎn)換是

時(shí):

(1)實(shí)體類型。將每個(gè)實(shí)體類型轉(zhuǎn)換成一個(gè)關(guān)系模式,實(shí)體的屬性即為

關(guān)系模式的屬性,實(shí)體標(biāo)識(shí)符為關(guān)系模式的鍵。

(2)聯(lián)系類型。

①若實(shí)體間的聯(lián)系是1:1的,可以在兩個(gè)實(shí)體類型轉(zhuǎn)換成的兩個(gè)關(guān)系模式

中任意一個(gè)關(guān)系模式的屬性中加入另一個(gè)關(guān)系模式的鍵和聯(lián)系類型的屬性

②若實(shí)體間的聯(lián)系是1:N的,則在N端實(shí)體類型轉(zhuǎn)換成的關(guān)系模式中加入

1端實(shí)體類型轉(zhuǎn)換成的關(guān)系模式的鍵和聯(lián)系類型的屬性;

③若實(shí)體間聯(lián)系是M:N的,則將聯(lián)系類型也轉(zhuǎn)換成關(guān)系模式,其屬性為兩

端實(shí)體類型的鍵加上聯(lián)系類型的屬性,而鍵為兩端實(shí)體鍵的組合。

關(guān)系數(shù)據(jù)庫的規(guī)律設(shè)計(jì)過程為:

(1)從ER模式導(dǎo)出初始關(guān)系模式。

(2)法律規(guī)范化處理:確定法律規(guī)范級(jí)別和實(shí)施法律規(guī)范化處理。

(3)模式評(píng)價(jià):包括功能評(píng)價(jià)和性能評(píng)價(jià)。

(4)模式修正:可采納合并、分解或選用此外結(jié)構(gòu)的方式進(jìn)行。在經(jīng)過

模式評(píng)階及修正的反復(fù)多次后,最終的數(shù)據(jù)庫模式得以確定,全局規(guī)律結(jié)構(gòu)

設(shè)計(jì)即告結(jié)束。在規(guī)律設(shè)計(jì)階段,還要設(shè)計(jì)出全部子模式。

(十)物理設(shè)計(jì)

對(duì)一個(gè)給定的規(guī)律數(shù)據(jù)模型選取一個(gè)最適合應(yīng)用環(huán)境的物理結(jié)構(gòu)的過程,稱

為數(shù)據(jù)庫的物理設(shè)計(jì)。所謂數(shù)據(jù)庫的物理結(jié)構(gòu),主要指數(shù)據(jù)庫在物理設(shè)施上的存

儲(chǔ)結(jié)構(gòu)和存取方法。它是完全依靠于給定的計(jì)算機(jī)系統(tǒng)的。在物理結(jié)構(gòu)中,數(shù)據(jù)

的基本單位是存儲(chǔ)紀(jì)錄。“文件”是某一類型的全部存儲(chǔ)紀(jì)錄的集合。一般我們

用“文件”表示單紀(jì)錄類型的物理數(shù)據(jù)庫。

物理設(shè)計(jì)可分五步來完成:

(1)存儲(chǔ)紀(jì)錄結(jié)構(gòu)設(shè)計(jì):包括紀(jì)錄的組成、數(shù)據(jù)項(xiàng)的類型和長度,以及

規(guī)律紀(jì)錄到存儲(chǔ)紀(jì)錄的映射;

(2)確定數(shù)據(jù)存儲(chǔ)支配;

(3)訪問方法的設(shè)計(jì);

(4)完整性和完全性;

(5)程序設(shè)計(jì)。

前三步涉及到物理數(shù)據(jù)庫結(jié)構(gòu)的設(shè)計(jì),后兩步涉及到約束和具體的程序設(shè)

計(jì)。物理設(shè)計(jì)階段的輸出是物理數(shù)據(jù)庫結(jié)構(gòu)說明書,包括存儲(chǔ)紀(jì)錄格式、存儲(chǔ)紀(jì)

錄位置及訪問方法。它能滿意全部的操作需求并給出對(duì)硬件、軟件系統(tǒng)的約束。

在設(shè)計(jì)過程中效率問題只能在各種約束得到滿意且獲得可行方案之后進(jìn)行。

(十一)實(shí)現(xiàn)與維護(hù)

在數(shù)據(jù)的實(shí)現(xiàn)與維護(hù)階段,設(shè)計(jì)人員運(yùn)用DBMS供應(yīng)的數(shù)據(jù)定義語立,將規(guī)

律設(shè)計(jì)和物理設(shè)計(jì)的結(jié)果嚴(yán)格地描述出來,成為DBMS可接受的源代碼,經(jīng)過調(diào)

試產(chǎn)生目標(biāo)模式,然后組織數(shù)據(jù)入庫。實(shí)現(xiàn)階段的主要工作有:

(1)建立實(shí)際數(shù)據(jù)庫結(jié)構(gòu);

(2)試運(yùn)行;

(3)裝人數(shù)據(jù)。

在數(shù)據(jù)庫正式投入使用之前,還有一些工作要做。如數(shù)據(jù)庫的重新組織設(shè)計(jì),

故障恢復(fù)方案設(shè)設(shè)計(jì)、平安性考慮和事務(wù)掌握等。

運(yùn)行維護(hù)階段的主要工作是:

(1)維護(hù)數(shù)據(jù)庫的平安性與完整性掌握及系統(tǒng)的轉(zhuǎn)儲(chǔ)和恢復(fù);

(2)性能的監(jiān)督、分析與改進(jìn);

(3)增加新功能;

(4)發(fā)覺錯(cuò)誤,修改錯(cuò)誤

第五講數(shù)據(jù)庫管理系統(tǒng)

(一)數(shù)據(jù)庫管理系統(tǒng)概述

1.DBMS的系統(tǒng)目標(biāo)

數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫系統(tǒng)的核心。從用戶來看,一個(gè)DBMS應(yīng)盡可能具

有如下的系統(tǒng)目標(biāo)。

(1)用戶界面友好

(2)結(jié)構(gòu)清楚

(3)開放性

2.DBMS的基本功能

(1)數(shù)據(jù)庫定義功能

(2)數(shù)據(jù)存取功能

(3)數(shù)據(jù)庫運(yùn)行管理

(4)數(shù)據(jù)組織、存儲(chǔ)和管理功能

(5)數(shù)據(jù)庫的建立和維護(hù)功能

(6)其他功能

(-)數(shù)據(jù)庫管理系統(tǒng)的結(jié)構(gòu)和運(yùn)行過程

1.DBMS程序模塊的組成

(1)數(shù)據(jù)定義方面的程序模塊

(2)數(shù)據(jù)操縱方面的程序模塊

(3)數(shù)據(jù)庫運(yùn)行管理方面的程序模塊

(4)數(shù)據(jù)庫組織、存儲(chǔ)和管理方面的程序模塊

(5)數(shù)據(jù)庫建立、維護(hù)和其他方面的程序模塊

2.DBMS的層次結(jié)構(gòu)

最上層是應(yīng)用層,位于DBMS核心之外。它處理的對(duì)象是各種各樣的數(shù)據(jù)庫

應(yīng)用,如用開發(fā)工具開發(fā)的或用宿主語言編寫的應(yīng)用程序,終端用戶通過應(yīng)用接

口發(fā)出事務(wù)懇求或各種查詢要求。該層是DBMS與終端用戶和應(yīng)用程序的界面層。

其次層是語言翻譯處理層。它處理的對(duì)象是數(shù)據(jù)庫語言,如SQL。向上供應(yīng)

的數(shù)據(jù)接

是關(guān)系、視圖,即元組的集合。其功能是對(duì)數(shù)據(jù)庫語言的各類語句進(jìn)行語法

分析、視圖轉(zhuǎn)換、授權(quán)檢查、完整性檢查、查詢優(yōu)化等。通過對(duì)下層基本模塊的

調(diào)用,生成可執(zhí)行代碼。這些代碼的運(yùn)行即可完成數(shù)據(jù)庫語句的功能要求。

第三層是數(shù)據(jù)庫取層。該層處理的對(duì)象是單個(gè)元組,它把上層的集合操作轉(zhuǎn)

化為單紀(jì)錄操作。執(zhí)行掃描(如表掃描)、排序、元組的查找、插入、修改、刪除、

封鎖等基本操作。完成數(shù)據(jù)錄的存取、存取路徑維護(hù)、并發(fā)掌握、事務(wù)管理等工

作。

第四層是數(shù)據(jù)存儲(chǔ)層。該層處理的對(duì)象是數(shù)據(jù)頁和系統(tǒng)緩沖區(qū)。執(zhí)行文件的

規(guī)律打開、關(guān)閉、讀頁、寫頁、緩沖區(qū)讀和寫、頁面淘汰等操作,完成緩沖區(qū)管

理、內(nèi)外存交換、外存的數(shù)據(jù)管理等功能。

(三)新的應(yīng)用要求對(duì)DBMS的挑戰(zhàn)

(1)RDBMS的進(jìn)展過程

RDBMS產(chǎn)品經(jīng)受了從集中到分布,從單機(jī)環(huán)境到網(wǎng)絡(luò),從支持信息管理到聯(lián)

機(jī)事務(wù)處理(OLTP),再到聯(lián)機(jī)分析處理(OLAP)的進(jìn)展過程;對(duì)關(guān)系模型的支持也

逐步完善,系統(tǒng)的功能不斷增加。

(2)新的應(yīng)用需求對(duì)DBMS的挑戰(zhàn)

隨著數(shù)據(jù)庫技術(shù)的進(jìn)展,數(shù)據(jù)庫應(yīng)用領(lǐng)域越來越廣泛,各應(yīng)用領(lǐng)域?qū)?shù)據(jù)庫

的需求也不斷增加。計(jì)算機(jī)應(yīng)用由以前的單項(xiàng)業(yè)務(wù)處理朝著簡單綜合業(yè)務(wù)系統(tǒng)進(jìn)

展。在這綜合系統(tǒng)中,不僅包括大量的聯(lián)機(jī)事務(wù)處理(OLTP),同時(shí)還有大量的批

處理和決策支持及聯(lián)機(jī)分析處理(OLAP)等需求。因此,需要各種新技術(shù)來解決現(xiàn)

實(shí)應(yīng)用的需求。

(四)0racle數(shù)據(jù)庫系統(tǒng)

1.Oracle數(shù)據(jù)庫系統(tǒng)簡介

Oracle數(shù)據(jù)庫系統(tǒng)是美國Oracle公司的產(chǎn)品。該公司1979年推出了世界

第一個(gè)商業(yè)化的關(guān)系型數(shù)據(jù)管理系統(tǒng)。

最近推出的0racle9i是業(yè)界第一個(gè)完整的、簡潔的用于互聯(lián)網(wǎng)的新一代智

能化的、協(xié)作各種應(yīng)用的軟件基礎(chǔ)架構(gòu)。Oracle%實(shí)際上是指0racle9i數(shù)據(jù)庫、

0racle9iApplicationServer和0racle9iDeveloperSuite的完整集成。

2.Oracle的主要產(chǎn)品及其功能

Oracle產(chǎn)品主要包括數(shù)據(jù)庫服務(wù)器、開發(fā)工具和連接產(chǎn)品3類。

(DOracle數(shù)據(jù)庫服務(wù)器功能及其特色

Oracle數(shù)據(jù)庫服務(wù)器包括標(biāo)準(zhǔn)服務(wù)器和很多可選的服務(wù)器選件,選件用于

擴(kuò)展標(biāo)準(zhǔn)服務(wù)器的功能,以適應(yīng)特別的應(yīng)用需求。

①標(biāo)準(zhǔn)服務(wù)器主要具有下列特色:

多進(jìn)程多線索的體系結(jié)構(gòu)。

高性能核心技術(shù)。

高可用性。

SQL的實(shí)現(xiàn)o

②并行服務(wù)器選件(paralleserveroption)和并行查詢選件

(parallequeryoption)

③分布式選件(distributedoption)

④過程化選件(proceduraloption)

(2)Oracle的工具產(chǎn)品及其功能

為便采用戶開發(fā)數(shù)據(jù)庫應(yīng)用程序,Oracle供應(yīng)了眾多工具供用戶選擇使用。

主要有:

①Developer/2000

②Dsigner/2000

③支持聯(lián)機(jī)分析處理(OLAP)

④并行處理力量

③Discoverer/'2000

@0racleOffice

⑤SQLDBA

?Oracle預(yù)編譯器

⑦Oracle調(diào)用接口

(3)Oracle的連接產(chǎn)品及其功能

①SQL*Net是一個(gè)負(fù)責(zé)客戶機(jī)與服務(wù)器之間網(wǎng)絡(luò)通信的產(chǎn)品,它使得客戶計(jì)

算機(jī)上的Oracle應(yīng)用開發(fā)工具能夠訪問遠(yuǎn)程的Oracle數(shù)據(jù)庫服務(wù)器中的數(shù)據(jù)。

它允許客戶機(jī)和服務(wù)器是異構(gòu)計(jì)算機(jī)與操作系統(tǒng),并支持TCP/IP等多種網(wǎng)絡(luò)通

信合同。'

②Oracle多合同轉(zhuǎn)換器Oracle7支持全部主要的網(wǎng)絡(luò)合同;允許異種網(wǎng)絡(luò)

的多合同交換;

供應(yīng)合同透亮性;擁有啟動(dòng)的可選網(wǎng)絡(luò)路由選擇等。

③Oracle開放式網(wǎng)關(guān)(opengateway)Oracle開放式網(wǎng)關(guān)技術(shù)能把多種數(shù)據(jù)

源集成為一個(gè)整體,使得應(yīng)用程序不做任何修改就可以運(yùn)行在非Oracle數(shù)據(jù)源

上(即訪問非Oracle數(shù)據(jù)庫中的數(shù)據(jù))。開放式網(wǎng)關(guān)包括透亮網(wǎng)關(guān)和

過程化網(wǎng)關(guān)。采用透亮網(wǎng)關(guān),Oracle應(yīng)用程序可以直接訪問IBMDB2

和SQL/DS,DECRMS和RDB、tandamnonstopSQL,HPTurboimage等數(shù)據(jù)源。假如

需要訪問其他數(shù)據(jù)源,則必需通過過程化網(wǎng)關(guān),即用戶用PL/SQL編程構(gòu)造網(wǎng)關(guān)。

3.Oracle的數(shù)據(jù)倉庫和Intemet解決方案

(1)Oracle的數(shù)據(jù)倉庫解決方案

Oracle的數(shù)據(jù)倉庫解決方案是OracleOLAP產(chǎn)品,主要包括服務(wù)器端的

OracleExpress

Server選件與客戶端的OracleExpressObjects和OracleExpressAnalyzer

工具。

(2)Oracle的Intemet解決方案

鑒于數(shù)據(jù)庫是存儲(chǔ)與管理信息的最有效的方式,將數(shù)據(jù)庫技術(shù)與Web技術(shù)結(jié)

合應(yīng)用于Internet會(huì)很有前途。Oracle針對(duì)Intemet/Intranet的產(chǎn)品是

OracleWebservero由OracleWebListener,OracleWebAgent和0racle7服務(wù)器

三部分組成。?

(五)IBMDB2數(shù)據(jù)庫系統(tǒng)

1.IBMDB2數(shù)據(jù)庫系統(tǒng)簡介

IBMDB2數(shù)據(jù)系統(tǒng)是美國IBM公司的產(chǎn)品。

Starburst的目的是要針對(duì)IBM爭論人員對(duì)SQL關(guān)系型數(shù)據(jù)庫各種局限的了

解,建立新一代的、具延長性的關(guān)系型數(shù)據(jù)庫原型。延長性指的是在數(shù)據(jù)庫各子

系統(tǒng)實(shí)現(xiàn)開放性,使用戶能夠很簡潔地把新功能加注到一個(gè)SQL關(guān)系型數(shù)據(jù)庫

里,以便支持新一代的應(yīng)用。Starburst為新一代商用對(duì)象關(guān)系型數(shù)據(jù)庫(Object

一relationalDatabase)供應(yīng)了珍貴的閱歷與技術(shù)來源。

2.DB2通用數(shù)據(jù)庫的功能和特色

DB2家族除了包含在各種平臺(tái)上運(yùn)行的數(shù)據(jù)庫管理系統(tǒng)內(nèi)核之外,產(chǎn)品包中

還包括了數(shù)據(jù)復(fù)制、數(shù)據(jù)庫系統(tǒng)管理、環(huán)球網(wǎng)(Internet)網(wǎng)關(guān)支持、在線分析處

理、多媒體支持和各種并行處理力量,并為全部平臺(tái)上的異構(gòu)數(shù)據(jù)庫訪問供應(yīng)''中

間件"(middleware)解決方案。

DB2通用數(shù)據(jù)庫(UDB)V7.1的特色有:

①支持Intemet應(yīng)用

②支持面對(duì)對(duì)象和多媒體應(yīng)用

③支持聯(lián)機(jī)分析處理(OLAP)

④并行處理力量

3.IBM的商務(wù)智能解決方案

商務(wù)智能解決方案的基本結(jié)構(gòu)往往包括以下3個(gè)部分:數(shù)據(jù)倉庫,用于抽取、

整合、分布、存儲(chǔ)有用的信息;多維分析模型,全方位了解現(xiàn)狀;前臺(tái)分析工具,

供應(yīng)簡潔易用的圖形化界面給管理人員。

4.IBM內(nèi)容管理(ContentManagement)解決方案

(1)IBMContentManagerOnDemand

IBMOnDemand解決方案可以完成電子存儲(chǔ)、回取、分發(fā)、打印和傳真,在極

短的時(shí)間內(nèi)就可以在顯示器上獲得與原來供應(yīng)應(yīng)客戶的一模一樣的報(bào)表/帳單以

及其他計(jì)算機(jī)輸出信息。

(2)DigitalLibrary(數(shù)字圖書館)

IBM數(shù)字圖書館技術(shù)使人們快速而廉價(jià)地管理、訪問、愛護(hù)以及傳遞大量多

種多樣的資料成為可能。

(六)SYBASE數(shù)據(jù)庫系統(tǒng)

1.SYBASE數(shù)據(jù)庫系統(tǒng)簡介

SYBASE是美國SYBASE公司的產(chǎn)品。1999年8月,SYBASE正式發(fā)布了針對(duì)

企業(yè)門戶(EP)市場(chǎng)的公司策略,進(jìn)一步加強(qiáng)了公司在企業(yè)數(shù)據(jù)管理和應(yīng)用開發(fā)、

移動(dòng)和嵌入式計(jì)算機(jī)、Intemet計(jì)算環(huán)境及數(shù)據(jù)倉庫等領(lǐng)域的領(lǐng)先地位。

2.SYBASE數(shù)據(jù)庫系統(tǒng)的功能及其特色

目前,SYBASE數(shù)據(jù)庫系統(tǒng)定位在4個(gè)方向:分別在企業(yè)解決方案、Intemet

應(yīng)用、商務(wù)智能和移動(dòng)與嵌入計(jì)算領(lǐng)域?yàn)榭蛻艄?yīng)先進(jìn)的技術(shù)。

企業(yè)解決方案包括企業(yè)級(jí)數(shù)據(jù)庫,數(shù)據(jù)復(fù)制和數(shù)據(jù)訪問。主要產(chǎn)品有:

SYBASEEP,AdaptiveServerEnterprise,AdaptiveServerReplication,

AdaptiveServerConnect及異構(gòu)數(shù)據(jù)庫互聯(lián)選件。

(1)SYBASE企業(yè)門戶

(2)企業(yè)級(jí)數(shù)據(jù)庫服務(wù)器

(3)0penClient/~enServer

(4)ReplicationServer

(5)PowerDesigner

(6)OmniCONNECT

(7)DirectConnect.

3.SYBASE的Intemet應(yīng)用和商務(wù)智能解決方案

SYBASE的Intemet應(yīng)用方向的產(chǎn)品關(guān)心企業(yè)通過Intemet作為業(yè)務(wù)計(jì)算的

平臺(tái)來獵取競(jìng)爭優(yōu)勢(shì)。主要產(chǎn)品有數(shù)據(jù)庫服務(wù)器、中間層應(yīng)用服務(wù)器、以及強(qiáng)大

的快速應(yīng)用開發(fā)工具PowerBuilder。開發(fā)者依據(jù)其行業(yè)特點(diǎn)采用相應(yīng)部件建立

打包的基于Web的應(yīng)用。

(l)EnterpriseApplicationServer

(2)快速應(yīng)用開發(fā)工具

(3)SYBASE的商務(wù)智能解決方案

4.SYBASE的移動(dòng)與嵌入計(jì)算解決方案。一

移動(dòng)與嵌入計(jì)算產(chǎn)品系列將原始數(shù)據(jù)轉(zhuǎn)換成企業(yè)信息并發(fā)布到企業(yè)的任何

地方。移動(dòng)數(shù)

據(jù)庫產(chǎn)品AdaptiveServerAnywhere和最新的UltraLite數(shù)據(jù)庫配置選項(xiàng)以

其高性能、可擴(kuò)展的技術(shù)加強(qiáng)了SYBASE在這一市場(chǎng)的優(yōu)勢(shì)。

主要產(chǎn)品包括SYBASESQLAnywhereStudio和iAnywhereWirelessServero

(-t)MS-SQLSERVER數(shù)據(jù)庫系統(tǒng)

1.MS-SQLSERVER數(shù)據(jù)庫系統(tǒng)簡介

MS-SQLSERVER數(shù)據(jù)庫系統(tǒng)是美國Microsoft(微軟)公司的產(chǎn)品。目前,

MicrosoftServer7.0和MicrosoftSQLServer2000已經(jīng)廣泛使用于我們國家的

各行各業(yè),包括很多政府部門。

2.MS-SQLSERVER數(shù)據(jù)庫系統(tǒng)主要功能及其特性

(1)數(shù)據(jù)庫服務(wù)器MS-SQLSERVER

MS-SOLSERVER數(shù)據(jù)庫系統(tǒng)的核心是MicrosoftSOLServer,簡稱為

MS-SQLServer或SQLServer□

(2)MSSQLServer2000的主要功能及其特色

①充分的Web支持

②高度可伸縮性和牢靠性

③最快投放市場(chǎng).

④充分的數(shù)據(jù)倉庫功能

⑤廣泛支持電子商務(wù)功能

3.SQLServer2000多版本支持

為滿意不同單位和個(gè)人對(duì)性能、運(yùn)行時(shí)間和價(jià)格的特別要求,SQLServer2000

供應(yīng)各種不同的版本,包括:

①SQLServer2000企業(yè)版

②SQLServer2000標(biāo)準(zhǔn)版

③SQLServer2000個(gè)人版

@SQLServer2000開發(fā)人員版

⑤SQLServer2000企業(yè)評(píng)估版

(§)SQLServer2000桌面引擎(MSDE)

⑦SQLServer2000WindowsCE版

4.MicrosoftSQLServer2000的軟、硬件環(huán)境

(1)使用MicrosoftSQLServer2000企業(yè)版,需要的配置

①PC機(jī)具有Intel或兼容的Pentium,166MHz或更高配置的處理器。

②帶有ServicePack5或更高版本的MicrosoftWindowsNTServer4.0、帶有

ServicePack5

或更高版本的WindowsNTServer4.0企業(yè)版、Windows2000Server、

Windows2000AdancedServer或Windows2000DatacenterServer操作系統(tǒng)。

③最低64MBRAM(推舉使用128MB或更大容量的內(nèi)存)。

④硬盤空間要求:

對(duì)于數(shù)據(jù)庫服務(wù)器,要求95MB?270MB的磁盤空間,典型安裝需要大約

250MB的空間;

對(duì)于AnalysisServices,要求50MB的磁盤空間;典型安裝需要130MB的磁

盤空間;

對(duì)于MicrosoftEnglishQuery,要求80MB的磁盤空間。

⑤MicrosoftIntemetExplorer5.0或更高版本

?CD-ROM驅(qū)動(dòng)器

⑦VGA或更高辨別率的監(jiān)視器

⑧Microsoft鼠標(biāo)或兼容設(shè)施

(2)使用MicrosoftSQLServer2000個(gè)人版需要的配置

(除以下各項(xiàng)外,其他要求均與企業(yè)版相同)

①需支持MicrosoftWindows98,WindowsMillenniumEdition^Windows2000

專業(yè)版、帶有ServicePack5或更高版本的WindowsNTWorkstation4.0

②最低32MB的RAM(推舉使用64MB或更大容量的內(nèi)存)

(3)使用MicrosoftSQLServer2000DesktopEngine需要的配置

除以下各項(xiàng)外,其他要求均與企業(yè)版相同。

①需支持MicrosoftWindows98、WindowsME>帶有ServicePack5或更高版

本的WindowsNTWorkstation4.0或Windows2000專業(yè)版

②最少32MB的RAM

③44MB的可用硬盤空間

(4)網(wǎng)絡(luò)支持

Windows95、Windows98>WindowsME、WindwosNT4.0或Windows2000內(nèi)置

網(wǎng)絡(luò)軟件(除非使用BanyanVINES或AppleTalkADSP,否則不需其他網(wǎng)絡(luò)軟件;

由Windows網(wǎng)絡(luò)環(huán)境中的NWLink合同負(fù)責(zé)供應(yīng)NovelINetWarelPX/SPX客戶端

支持)??蛻舳酥С郑篧indows95>Windows98>WindowsME、

WindowsNTWorkstation4.0^Windows2000專業(yè)版、UNIX、AppleMacintosh和OS/2

第六講事務(wù)管理與數(shù)據(jù)庫平安性

(一)數(shù)據(jù)庫的恢復(fù)

為了保證數(shù)據(jù)庫的完整性,事務(wù)必需具有原子性、全都性、隔離性、長久性

四共性質(zhì),即事務(wù)的ACID性質(zhì)。

數(shù)據(jù)庫系統(tǒng)中常見的故障很多,造成數(shù)據(jù)庫中數(shù)據(jù)損壞的故障通常有:事務(wù)

故障、系統(tǒng)故障、介質(zhì)故障。作為DBMS,應(yīng)能把數(shù)據(jù)庫從被破壞、不正確的狀

態(tài)恢復(fù)到最近一個(gè)正確狀態(tài)。DBMS的這種力量稱為可恢復(fù)性。數(shù)據(jù)庫恢復(fù)的實(shí)

現(xiàn)方法:

(1)定期對(duì)整個(gè)數(shù)據(jù)庫進(jìn)行復(fù)制或轉(zhuǎn)儲(chǔ)。轉(zhuǎn)儲(chǔ)可分為靜態(tài)轉(zhuǎn)儲(chǔ)和動(dòng)態(tài)轉(zhuǎn)

儲(chǔ);轉(zhuǎn)儲(chǔ)還可以分為海量存儲(chǔ)和增量轉(zhuǎn)儲(chǔ)

(2)建立“日志”文件

(3)恢復(fù)

(二)數(shù)據(jù)庫的并發(fā)掌握

在多用戶共享系統(tǒng)中,假如多個(gè)用戶同時(shí)對(duì)同一數(shù)據(jù)進(jìn)行操作稱為并發(fā)操

作。并發(fā)操作時(shí),事務(wù)相互之間可能有干擾,破壞了事務(wù)的隔離性。DBMS的并

發(fā)掌握子系統(tǒng)負(fù)責(zé)協(xié)調(diào)并發(fā)事務(wù)的執(zhí)行,保證數(shù)據(jù)的全都性不受破壞,同時(shí)避開

用戶得到不正確的數(shù)據(jù)。數(shù)據(jù)庫的并發(fā)操作通常會(huì)帶來以下三類問題:

(1)丟失更新問題;

(2)不全都分析問題;

(3)“臟數(shù)據(jù)”的讀出。

所謂并發(fā)掌握就是要用正確的方法調(diào)度并發(fā)操作。

(三)數(shù)據(jù)庫的完整性

數(shù)據(jù)庫的完整性是指數(shù)據(jù)的正確性和相容性。完整性檢查,即系統(tǒng)用肯定的

機(jī)制采檢查數(shù)據(jù)庫中的數(shù)據(jù)是否滿意規(guī)定的條件。這種條件在.數(shù)據(jù)庫中稱為完

整性約束條件。對(duì)數(shù)據(jù)庫的非法更新有:

(1)數(shù)據(jù)本身是錯(cuò)誤的,輸入時(shí),就按錯(cuò)誤的數(shù)據(jù)輸入;

(2)數(shù)據(jù)原來是正確的,由于操作或程序的錯(cuò)誤,造成插入時(shí)變成錯(cuò)

誤的數(shù)據(jù);

(3)由于系統(tǒng)故障,使數(shù)據(jù)發(fā)生錯(cuò)誤;

(4)若干事務(wù)的并發(fā)執(zhí)行產(chǎn)生不正確的數(shù)據(jù);

(5)人為地有意破壞。數(shù)據(jù)庫的完整性是通過DBMS的完整性子系統(tǒng)

實(shí)現(xiàn)的。

完整性子系統(tǒng)的主要功能有:

(1)監(jiān)督事務(wù)的執(zhí)行,并測(cè)試是否違反完整性規(guī)章;

(2)如有違反現(xiàn)象,則實(shí)行恰當(dāng)?shù)牟僮?,諸如拒絕、報(bào)告違反狀況、

改正錯(cuò)誤等方法來處理。

(四)數(shù)據(jù)庫的平安性

數(shù)據(jù)庫的平安性是指愛護(hù)數(shù)據(jù)庫,防止不合法的使用,以免數(shù)據(jù)的泄漏、非

法更改和破壞。對(duì)數(shù)據(jù)庫不合法的使用稱為數(shù)據(jù)庫的濫用。數(shù)據(jù)庫的濫用可分為

無意和惡意的兩類。惡意的濫用主要是指未經(jīng)授權(quán)的讀取數(shù)據(jù)(即偷竊信息)和未

經(jīng)授權(quán)的修改數(shù)據(jù)(即破壞數(shù)據(jù))o數(shù)據(jù)庫的完整性是指盡可能避開對(duì)數(shù)據(jù)庫的無

意的濫用;數(shù)據(jù)庫的平安性是指盡可能避開對(duì)數(shù)據(jù)庫的惡意的濫用。為了愛護(hù)數(shù)

據(jù)庫,防止惡意的濫用,可以從環(huán)境級(jí)、職員級(jí)、OS級(jí)、網(wǎng)絡(luò)級(jí)、數(shù)據(jù)庫系統(tǒng)

級(jí)等方面設(shè)置各種平安措施。

第七講新一代數(shù)據(jù)庫應(yīng)用開發(fā)工具

(-)新一代數(shù)據(jù)庫應(yīng)用開發(fā)工具概念

1.使用應(yīng)用開發(fā)工具的意義

詹姆斯?馬丁(JamesMartin)指出:'企業(yè)間的技術(shù)競(jìng)爭,實(shí)質(zhì)上是計(jì)算機(jī)應(yīng)

用系統(tǒng)的競(jìng)爭。哪個(gè)公司能以最快的速度建立所需的計(jì)算機(jī)應(yīng)用系統(tǒng),哪個(gè)公司

就能在競(jìng)爭中取勝。假如一個(gè)公司要花幾年的時(shí)間去建立和調(diào)試一個(gè)簡單的應(yīng)用

系統(tǒng),而它的競(jìng)爭對(duì)手只需幾個(gè)月,那么,這個(gè)公司將沒有生意”??梢?,快速

建立計(jì)算機(jī)應(yīng)用系統(tǒng)對(duì)一個(gè)企業(yè)來說是多么重要。

2.新一代數(shù)據(jù)庫應(yīng)用開發(fā)工具的特征和進(jìn)展趨勢(shì)

(1)新一代數(shù)據(jù)庫應(yīng)用開發(fā)工具的特征

新一代客戶機(jī)/服務(wù)器前端快速開發(fā)工具應(yīng)具備以下基本特征:

①支持與多種數(shù)據(jù)庫聯(lián)接,可進(jìn)行對(duì)異種數(shù)據(jù)庫源的透亮訪問

②支持獨(dú)立于特定DBMS的應(yīng)用開發(fā),供應(yīng)統(tǒng)一的訪問DBMS的用戶界面和

應(yīng)用程序接口。

③支持可視化圖形用戶界面(VGU”o

④支持面對(duì)對(duì)象的程序設(shè)計(jì)(OOP)o

⑤供應(yīng)完善的數(shù)據(jù)對(duì)象(dataobiect)o

⑥支持開放性。

⑦工具的完備和集成一體化。

⑧支持漢化。

(2)當(dāng)前應(yīng)用開發(fā)工具的進(jìn)展趨勢(shì)

當(dāng)前應(yīng)用開發(fā)工具的進(jìn)展趨勢(shì)是:

①采納三層Client/Server結(jié)構(gòu)

②對(duì)Web應(yīng)用的支持

③開放的、構(gòu)件式的分布式計(jì)算環(huán)境

(二)應(yīng)用開發(fā)工具的選擇

1.當(dāng)前應(yīng)用開發(fā)對(duì)工具的總需求

(1)提高開發(fā)和運(yùn)行效率

(2)降低開發(fā)和維護(hù)費(fèi)用

(3)應(yīng)用系統(tǒng)具有先進(jìn)性?

(4)代碼的可重用性

2.目前應(yīng)用開發(fā)工具存在的問題

目前某些應(yīng)用開發(fā)工具所存在的問題大致可歸納如下:

(1)開發(fā)過程過于簡單,涉及過多低層技術(shù)實(shí)現(xiàn)

(2)難于適應(yīng)要求穩(wěn)定的大規(guī)模的企業(yè)級(jí)業(yè)務(wù)處理

(3)難于快速適應(yīng)低層技術(shù)的更新和業(yè)務(wù)規(guī)律的變化

(三)CASE工具----PowerDsigner

1.PowerDesigner簡介

PowerDesigner是一個(gè)功能強(qiáng)大而使用簡潔的工具集,支持從處理流程建模

到對(duì)象和組件的生成的應(yīng)用開發(fā)生命周期的各個(gè)階段。并供應(yīng)了一個(gè)完整的建模

解決方案。業(yè)務(wù)或系統(tǒng)分析人員、設(shè)計(jì)人員、數(shù)據(jù)庫管理員DBA和開發(fā)人員可以

對(duì)其裁剪以滿意各自的特定需要。

2.PowerDesigner的組成及各模塊的功能

@PowerDesignerProcessAnalyst

②PowerDe~ignerDataArchitect

③PowerDesignerAppMode1er

④PowerDesignerMetaWorks

⑤PowerDesignerWarehouseArchitect,,

⑥PowerDesignerViewer

3.PowerDesigner的安裝

安裝PowerDesigner的計(jì)算機(jī)系統(tǒng)應(yīng)滿意如下要求:

①Intel486/66MHz或以上的CPU,使用P5100以上的處理器更好;

②12MB內(nèi)存,使用16MB以上更好;

③已安裝Windows95,WindowsNT4.0或與之100%兼容的其他操作系統(tǒng);

?CD-ROM;VGA或更高辨別率的顯示器;鼠標(biāo);

⑤PowerDesigner的各個(gè)模塊可以單獨(dú)安裝,每個(gè)模塊需要硬盤空間10MB

至12MB,

4.PowerDesigner的DataArchitect模塊

(1)DataArchitect的功能

DataArchitect是一個(gè)強(qiáng)有力的數(shù)據(jù)庫模型設(shè)計(jì)工具,它支持真正的兩層設(shè)

計(jì)方法,在概念層和物理層建立和維護(hù)數(shù)據(jù)模型,并供應(yīng)兩層設(shè)計(jì)方法的很多優(yōu)

點(diǎn)。

(2)DataArchitect的信息(處理)流程

(3)DataArchitect的使用方法

(4)建立概念數(shù)據(jù)模型(CDM)

①定義實(shí)體

②定義實(shí)體的屬性

③定義聯(lián)系

(5)建立物理數(shù)據(jù)模型(PDM)

物理數(shù)據(jù)模型的創(chuàng)建方式有如下幾種:

①從CDM生成PDMo

②直接生成PDMo

③從數(shù)據(jù)庫逆向生成PDMo

(6)生成創(chuàng)建數(shù)據(jù)庫的腳本文件(.SQL)

創(chuàng)建數(shù)據(jù)庫的腳本文件是一個(gè).SQL文件,生成的方法有如下兩種:

①從現(xiàn)有數(shù)據(jù)庫生成腳本文件

②從PDM生成創(chuàng)建數(shù)據(jù)庫的腳本文件(SQL文件)

(四)可視化程序開發(fā)工具一一Delphi

1.Delphi的進(jìn)展歷程

Delphi是美國Borlandinternational公司的產(chǎn)品。Delphi產(chǎn)品已經(jīng)經(jīng)受了

5代,第五代新產(chǎn)品Delphi5.0適用于WindowsNT和Windows95/98/2000環(huán)

境,且對(duì)Delphi400在諸多性能和功能方面都有所改善,還包括了VisualC++5.0

與VisualBasic5.0的功能和優(yōu)點(diǎn)。

2.Delphi的主要特點(diǎn)

(1)具有良好的面對(duì)對(duì)象設(shè)計(jì)力量

(2)具有良好的數(shù)據(jù)處理力量

(3)具有良好的對(duì)標(biāo)準(zhǔn)技術(shù)的支持

(4)具有良好的Intemet/Intranet開發(fā)支持

(5)具有良好的對(duì)第三方構(gòu)件產(chǎn)品和工具的支持

3.Delphi的安裝和卸載

(1)軟、硬件環(huán)境要求

安裝Delphi的計(jì)算機(jī)系統(tǒng)應(yīng)滿意如下要求:

①Intel486/66MHz或以上的CPU,使用P5100以上的處理器更好;

②12MB內(nèi)存,使用16MB以上更好;

③已安裝Windows95,WindwosNT4.0或與之100%兼容的其他操作系統(tǒng);

?CD-ROM;VGA或更高辨別率的顯示器;鼠標(biāo);

⑤完全安裝客戶機(jī)/服務(wù)器套件版本需要170MB的硬盤空間(專業(yè)版需要

140MB,標(biāo)準(zhǔn)版需要130MB),另加10MB的臨時(shí)空間。

(2)安裝過程

(3)卸載Delphi

4.Delphi的集成開發(fā)環(huán)境

在Delphi安裝勝利之后,啟動(dòng)操作系統(tǒng),可以通過下述方法之一進(jìn)入

Delphi:

(1)雙擊Delphi圖標(biāo)。

(2)從“開頭”菜單中選擇Delphi。

5.Delphi程序設(shè)計(jì)的基本步驟

建立一個(gè)Delphi程序時(shí),用戶一般只需在一個(gè)窗體對(duì)象上放置所需要的各

種構(gòu)件,然后對(duì)其特性賦值,并編寫代碼以掌握大事。

(五)應(yīng)用開發(fā)工具----PowerBuilder

1.PowerBui1der概述

(1)PowerBuilder簡介

PowerBuilder是由美國聞名的數(shù)據(jù)庫應(yīng)用開發(fā)工具廠商PowerSoft公司(現(xiàn)

已并入SYBASE公司)于1991年6月推出的完全依據(jù)客戶機(jī)/服務(wù)器體系結(jié)構(gòu)設(shè)

計(jì)的快速應(yīng)用開發(fā)統(tǒng),是一個(gè)客戶機(jī)前端開發(fā)工具。

(2)PowerBuilder的主要特點(diǎn)

PowerBuilder的主要特點(diǎn)包括:

①專業(yè)的客戶機(jī)/服務(wù)器應(yīng)用開發(fā)工具;

②全面支持面對(duì)對(duì)象開發(fā);?

③使用特地接口或ODBC,可同時(shí)支持與多種數(shù)據(jù)庫的連接。特別適合于多

層客戶機(jī)/服務(wù)器結(jié)構(gòu)的集成化應(yīng)用系統(tǒng)開發(fā);

④供應(yīng)豐富的數(shù)據(jù)表現(xiàn)風(fēng)格,可定制的稱為“數(shù)據(jù)窗口(DataWindows)”對(duì)

象(該項(xiàng)技術(shù)

獲專利),可簡潔地對(duì)數(shù)據(jù)庫進(jìn)行操作并能敏捷地制作報(bào)告和商業(yè)圖形;

⑤支持動(dòng)態(tài)數(shù)據(jù)交換(DDE)、動(dòng)態(tài)鏈接庫(DLL)、對(duì)象鏈接與嵌入(OLE);

⑥供應(yīng)敏捷、快捷的數(shù)據(jù)和結(jié)構(gòu)移動(dòng)(復(fù)制)方式;

⑦供應(yīng)強(qiáng)大的調(diào)試器和多種調(diào)試方式;'

⑧支持Internet多層體系結(jié)構(gòu)下的快速Web應(yīng)用開發(fā)。

(3)PowerBuilder的安裝

①硬件環(huán)境:P5以上微機(jī),32MB以上內(nèi)存,VGA顯示器,80MB以上硬盤空

間o

②軟件環(huán)境:Windows98>WindowsNT.Windows2000等版本。

2.PowerBuilder大事驅(qū)動(dòng)的程序設(shè)計(jì)

(1)大事驅(qū)動(dòng)程序設(shè)計(jì)的概念

在過程化程序設(shè)計(jì)中,由程序掌握著處理的流向。用戶不行以違反程序設(shè)計(jì)

的路徑,至多能按程序設(shè)計(jì)的路徑做些選擇。在大事驅(qū)動(dòng)程序設(shè)計(jì)中,用戶可以

通過選擇在窗口中的對(duì)象來掌握處理的流向。

(2)PowerBuilder對(duì)象

對(duì)象是一種描述,一個(gè)對(duì)象有類名、特征(屬性)和定義該對(duì)象行為的方法組

成的自包含應(yīng)用成分。在PowerBuilder中,對(duì)象包括:應(yīng)用(Apllication)、窗

□(Window)>菜單(Menu)、數(shù)窗口(DataWindows)、按鈕(Button)以及各種控件

等。多個(gè)對(duì)象可以組合成新的對(duì)象。

(3)大事與腳本

大事(Event)是被用戶或應(yīng)用初始設(shè)定的動(dòng)作,包括系統(tǒng)預(yù)定義大事和用戶

定義大事。

系統(tǒng)為每類PowerBuilder對(duì)象定義了相應(yīng)的大事,例如,點(diǎn)擊(Clicked)、

打開(Open)>關(guān)

閉(Close),等等。

在PowerBuilder中,一個(gè)腳本是一組命令,這組命令是使用PowerScript

語言和函數(shù)

(PowerBuilder函數(shù)和用戶定義函數(shù))為某個(gè)大事編寫的。

3.PowerBuilder應(yīng)用開發(fā)環(huán)境和開發(fā)步驟

(1)PowerBuilder應(yīng)用開發(fā)環(huán)境

啟動(dòng)PowerBuilder,顯示它的主屏。在被稱為PowerBar的工具條中點(diǎn)擊一

個(gè)畫筆的圖標(biāo),就打開該畫筆。每一個(gè)PowerBuilder畫筆的屏幕都包括一個(gè)或

多個(gè)稱為PainterBar工具條、菜單、工作空間和MicroHelp。

(2)PowerBuilder應(yīng)用開發(fā)步驟

PowerBuilder應(yīng)用是一組PowerBuilder對(duì)象的集合。一般,一個(gè)

PowerBuilder應(yīng)用包括:應(yīng)用對(duì)象、窗口對(duì)象、在窗口對(duì)象上的菜單對(duì)象、數(shù)

據(jù)窗口對(duì)象、用戶定義對(duì)象和按鈕等各種掌握對(duì)象,以及與這些對(duì)象相關(guān)的大事

和大事處理程序(腳本)。

開發(fā)PowerBuilder應(yīng)用主要包括創(chuàng)建對(duì)象并定制它們的特性,使用

PowerScript語言、

PowerBuilder或用戶定義函數(shù)編寫腳本,用以定義和處理當(dāng)某個(gè)大事發(fā)生

時(shí)需要執(zhí)行的任務(wù)或動(dòng)作。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論