使用ADODB的構(gòu)建發(fā)展理念
ADODB 是 Active Data Objects Data Base 的簡稱,它是一種 PHP 存取數(shù)據(jù)庫的中間函式組件,可以先檢查一下你程序中的字符串,暫時把他們置為””,試試看。沒準(zhǔn)就是他引起的問題啊。
雖然 PHP 是建構(gòu) Web 系統(tǒng)強有力的工具,但是 PHP 存取數(shù)據(jù)庫的功能,一直未能標(biāo)準(zhǔn)化,每一種數(shù)據(jù)庫,都使用另一種不同且不兼容的應(yīng)用程序接口(API)。為了填補這個缺憾,因此才有 ADODB 的出現(xiàn)。一旦存取數(shù)據(jù)庫的接口予以標(biāo)準(zhǔn)化,就能隱藏各種數(shù)據(jù)庫的差異,若欲轉(zhuǎn)換至其它不同的數(shù)據(jù)庫,將變得十分容易。
目前 ADODB***版本是V4.62,支持的數(shù)據(jù)庫種類非常地多,例如:MySQL, PostgreSQL, Interbase, Informix, Oracle, MS SQL 7, Foxpro, Access, ADODB, Sybase, DB2 以及一般的 ODBC (其中 PostgreSQL、Informix、Sybase 的driver 是由自由軟件社群發(fā)展之后貢獻(xiàn)出來的)。
使用 ADODB ***的優(yōu)點之一是:不管后端數(shù)據(jù)庫如何,存取數(shù)據(jù)庫的方式都是一致的,開發(fā)設(shè)計人員不必為了某一套數(shù)據(jù)庫,而必須再學(xué)習(xí)另一套不同的存取方法,這大大減輕開發(fā)人員的知識負(fù)擔(dān),過去的知識往后仍可繼續(xù)使用,轉(zhuǎn)移數(shù)據(jù)庫平臺時,程序代碼也不必做太大的更動。
其實 ADODB 這樣的發(fā)展理念,并不是首創(chuàng)的,DBI 比 ADODB 出現(xiàn)得更早,它提供 Perl 存取數(shù)據(jù)庫時,使用一致的 API 呼叫接口。相信用過 Perl + DBI 的朋友,再來用 ADODB 時,會有一種似曾相識的感覺。#t#
使用DataSet的另一個好處是它能被繼承用于建立強類型的DataSet。強類型DataSet的好處包括設(shè)計時的檢查和強類型DataSet 的Visual Studio .NET語句填充。當(dāng)你為DataSet固定了大綱或關(guān)系結(jié)構(gòu)時,就能建立強類型DataSet,把行和列作為對象的屬性而不是項的集合。
例如,作為暴露顧客表的某一行的列名的代替,你可以暴露Customer對象的 Name屬性。強類型的ADODB衍生自DataSet類,因此不會犧牲DataSet的任何功能,也就是說,強類型的DataSet也可以是遠(yuǎn)程的,并作為數(shù)據(jù)綁定控件(例如DataGrid)的數(shù)據(jù)源提供。如果不知道大綱,也能通過使用通常的DataSet獲得好處,但是喪失了強類型DataSet的附加特性。