13.2 Delphi的數(shù)據(jù)庫(kù)特性及功能簡(jiǎn)介
直到目前為止,計(jì)算機(jī)軟件的開(kāi)發(fā)分為兩個(gè)不同的體系,其中一個(gè)體系是使用傳統(tǒng)的程序設(shè)計(jì)語(yǔ)言(如Pascal、Basic和C等)開(kāi)發(fā)數(shù)值控制、數(shù)值運(yùn)算等軟件,圍繞它們的重點(diǎn)是算術(shù)、數(shù)據(jù)結(jié)構(gòu)以及近年產(chǎn)生的面向?qū)ο蠹夹g(shù)。另一個(gè)體系則是通用的數(shù)據(jù)庫(kù)管理軟件領(lǐng)域(數(shù)據(jù)庫(kù)應(yīng)用程序的開(kāi)發(fā))。這兩個(gè)體系的發(fā)展都極為迅猛,但是二者并沒(méi)出現(xiàn)混合滲透跡象。如果使用數(shù)據(jù)庫(kù)語(yǔ)言進(jìn)行傳統(tǒng)的算術(shù)編程,雖然也能完成相應(yīng)的功能,但是其編程過(guò)程可能極為復(fù)雜。如果使用傳統(tǒng)的編程語(yǔ)言進(jìn)行數(shù)據(jù)庫(kù)編程,通過(guò)調(diào)用專(zhuān)用的數(shù)據(jù)庫(kù)應(yīng)用程序接口函數(shù)和過(guò)程,利用這些函數(shù)和過(guò)程提供的功能,可能也能做得比較完善,但這做起來(lái)大多是極其困難的。而Delphi結(jié)合了兩個(gè)體系的優(yōu)點(diǎn),它結(jié)合了傳統(tǒng)的編程語(yǔ)言O(shè)bject Pascal和數(shù)據(jù)庫(kù)語(yǔ)言的強(qiáng)大功能,它即可以用于傳統(tǒng)的算術(shù)編程又可以用于數(shù)據(jù)庫(kù)編程,特別是Delphi具有強(qiáng)大的數(shù)據(jù)庫(kù)功能,利用Delphi的數(shù)據(jù)庫(kù)工具,我們根本不需要編寫(xiě)任何Object Pascal代碼便可以創(chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)應(yīng)用。
Delphi是Borland公司于1994年底發(fā)布的用于開(kāi)發(fā)數(shù)據(jù)庫(kù)應(yīng)用程序的工具,它是面向?qū)ο蟮,它是目前開(kāi)發(fā)客戶/服務(wù)器數(shù)據(jù)庫(kù)應(yīng)用程序的強(qiáng)有力的工具。Delphi在Window3.1以上版本的系統(tǒng)環(huán)境下運(yùn)行,目前具有兩個(gè)版本:Delphi的標(biāo)準(zhǔn)版本和客戶/服務(wù)器版本。標(biāo)準(zhǔn)版本包含一個(gè)Borland Database Engine的局部拷貝,它允許用戶創(chuàng)建能訪問(wèn)dBASE、Paradox和Local InterBase 服務(wù)器的數(shù)據(jù)庫(kù)應(yīng)用, 它還支持具有 ODBC 接口的數(shù)據(jù)庫(kù)。Delphi的客戶/服務(wù)器版本包括Borland SQL Link, 它能直接訪問(wèn) ORACLE 、 SyBase 和Microsoft SQL Server,Informix以及InterBase數(shù)據(jù)庫(kù)服務(wù)器。
Delphi可以訪問(wèn)多種數(shù)據(jù)庫(kù)管理系統(tǒng)的數(shù)據(jù)庫(kù),憑借窗體(Forms)和報(bào)表(Reports),BDE(Borland Database Engine)可以訪問(wèn)諸如Paradox、dBASE、本地InterBase 服務(wù)器的數(shù)據(jù)庫(kù),也可以訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)服務(wù)器上的數(shù)據(jù)庫(kù)(如ORACLE、SyBase、Informix等客戶/服務(wù)器數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)),或任何經(jīng)ODBC(Open Database Connecticity) 可訪問(wèn)的數(shù)據(jù)庫(kù)管理系統(tǒng)中的數(shù)據(jù)庫(kù)。
13.2.1 Delphi的數(shù)據(jù)庫(kù)特性
跟其他的應(yīng)用程序一樣,Delphi提供了許多部件以方便地創(chuàng)建數(shù)據(jù)庫(kù)應(yīng)用程序。數(shù)據(jù)庫(kù)對(duì)象的數(shù)據(jù)成員既可在設(shè)計(jì)階段設(shè)置,也可在運(yùn)行階段通過(guò)程序代碼進(jìn)行設(shè)置。Delphi的部件板上提供了兩頁(yè)數(shù)據(jù)庫(kù)應(yīng)用程序開(kāi)發(fā)中所要使用的部件:
數(shù)據(jù)訪問(wèn)頁(yè)(Data Access Page)上的部件用于直接訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)表。
數(shù)據(jù)控制頁(yè)(Data Control Page)上的部件用來(lái)與用戶交互,顯示、修改數(shù)據(jù)庫(kù)中的數(shù)據(jù)。
數(shù)據(jù)庫(kù)應(yīng)用程序首先是利用Delphi提供的數(shù)據(jù)庫(kù)部件與BDE建立聯(lián)系,然后再通過(guò)BDE與數(shù)據(jù)庫(kù)聯(lián)系。下圖闡述了Delphi的數(shù)據(jù)庫(kù)工具和部件、Delphi數(shù)據(jù)庫(kù)應(yīng)用程序與BDE 、數(shù)據(jù)源之間的關(guān)系。
下表概括了Delphi的數(shù)據(jù)庫(kù)特性:
表13.1 Delphi的數(shù)據(jù)庫(kù)特性
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
工具和部件 主 要 用 途
──────────────────────────────────────
Data Access Components 訪問(wèn)數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)表、存貯過(guò)程等
──────────────────────────────────────
Data Control Components 與用戶交互,提供顯示、修改數(shù)據(jù)庫(kù)中數(shù)據(jù)的界面
──────────────────────────────────────
Database Desktop(DBD) 建立、索引、查詢數(shù)據(jù)庫(kù)表以及訪問(wèn)、編輯來(lái)自各數(shù)據(jù)
中的數(shù)據(jù)
──────────────────────────────────────
ReportSmith 建立、瀏覽和打印數(shù)據(jù)庫(kù)表中的數(shù)據(jù)
──────────────────────────────────────
Borland Database Engine 數(shù)據(jù)庫(kù)應(yīng)用通過(guò)BDE訪問(wèn)dBASE Paradox數(shù)據(jù)庫(kù)中的數(shù)據(jù)
(BDE) 和本地InterBase數(shù)據(jù)庫(kù)服務(wù)器中的數(shù)據(jù)
──────────────────────────────────────
BDE Configuration 建立和管理BDE與數(shù)據(jù)庫(kù)建立連接時(shí)所使用的數(shù)據(jù)庫(kù)的
Utility 別名
──────────────────────────────────────
它是一個(gè)單用戶、多例程的本地SQL數(shù)據(jù)庫(kù)服務(wù)器,可
Local InterBase Server 在單機(jī)環(huán)境下用來(lái)開(kāi)發(fā)或測(cè)試客戶/服務(wù)器數(shù)據(jù)庫(kù)應(yīng)用
程序,然后再將之?dāng)U展成一個(gè)訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)服務(wù)器如ORACLE、SyBase、Informix等
──────────────────────────────────────
InterBase SQL Link 連接Delphi數(shù)據(jù)庫(kù)應(yīng)用程序一本地InterBase服務(wù)器的驅(qū)動(dòng)程序
Delphi上述這些特性使得我們創(chuàng)建數(shù)據(jù)庫(kù)應(yīng)用程序通過(guò)BDE能夠很靈活地與 dBASE 、Paradox、Local InterBase數(shù)據(jù)庫(kù)服務(wù)器進(jìn)行連接并可以方便地訪問(wèn)其中的數(shù)據(jù)。我們?cè)趧?chuàng)建一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)應(yīng)用時(shí)通過(guò)使用Delphi提供的上述工具和部件甚至可以不需編寫(xiě)任何程序。
BDE被自動(dòng)地包含在Delphi中,因此,我們?cè)趧?chuàng)建數(shù)據(jù)庫(kù)應(yīng)用程序時(shí),不必關(guān)心BDE的有關(guān)內(nèi)容。Delphi的安裝程序自動(dòng)為Paradox、dBASE和本地InterBaseServer 安裝相應(yīng)的驅(qū)動(dòng)程序,并建立了有關(guān)的配置,DBE Configuration Utility 可以建立應(yīng)用程序與數(shù)據(jù)庫(kù)的連接信息,還可以為數(shù)據(jù)庫(kù)設(shè)置別名。
下表列出了Delphi開(kāi)發(fā)Client/Server應(yīng)用程序的有關(guān)特性,這些特性擴(kuò)展了 Delphi訪問(wèn)遠(yuǎn)程數(shù)據(jù)庫(kù)的功能,如SQL數(shù)據(jù)庫(kù)服務(wù)器(ORACLE、SyBase、Informix、 Microsoft SQL Server、InterBase)。
相關(guān)推薦:2010年9月計(jì)算機(jī)等級(jí)考試試題及答案解析專(zhuān)題北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |