




版權(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 車輛抵押借款合同規(guī)范模板
- 司機(jī)安全生產(chǎn)責(zé)任書
- 交通運(yùn)輸集團(tuán)招聘
- 電工崗位安全生產(chǎn)責(zé)任
- 美術(shù)介紹畫家課件
- 企業(yè)安全生產(chǎn)三年行動(dòng)實(shí)施方案
- 崗位安全責(zé)任
- 羅中立父親的課件
- 2025至2030中國壓瘡墊行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 2025至2030中國史密斯機(jī)器行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢(shì)及投資規(guī)劃深度研究報(bào)告
- 2025年第一季度煙花爆竹安全作業(yè)特種作業(yè)操作證考試試卷(新手實(shí)戰(zhàn)卷)
- 2025年 荊州市荊發(fā)控股集團(tuán)招聘考試筆試試卷附答案
- 2025年新疆生產(chǎn)建設(shè)兵團(tuán)中考語文試卷(含答案)
- 2025年市場(chǎng)營銷學(xué)課程期末考試試題及答案
- 礦井調(diào)度員考試題及答案
- 三年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)及答案
- 2025至2030中國清分機(jī)行業(yè)發(fā)展趨勢(shì)分析與未來投資戰(zhàn)略咨詢研究報(bào)告
- 美國《GENIUS法案》:合規(guī)穩(wěn)定幣的監(jiān)管框架
- 2024國家開放大學(xué)電大??啤墩螌W(xué)原理》期末試題及答案試卷號(hào)完整版
- 2025廣東高考物理試題(大題部分)+評(píng)析
- 低空經(jīng)濟(jì)產(chǎn)業(yè)園運(yùn)營成本控制與財(cái)務(wù)管理
評(píng)論
0/150
提交評(píng)論