zeos数据库对象概述sergey sereoukhov merlin overview.pdf
OverviewoftheZeosDatabase
ObjectsArchitecture
SergeySeroukhov
MerlinMoncure
26November2003(Updated29/5/2008byMarkDaems)
TableofContents
1.GeneralOverview2
2.PlainAPILayer2
3.DatabaseConnectivityLayer3
4.ComponentLayer5
5.Epilog6
DirectaccesstoSQLdatabasescontinuestobeavitaltechnologyevenintodaysenterpriseenvironment.Thou-
sandsoftwo-tierclientserverapplicationsaredevelopedandmaintainedintheinternationalbusinesscommu-
nity.Mostofthemarebuiltoffofspeciallydesignedapplicationprogramminginterfaces(APIs)toretrieverela-
tionaldataandexecuteSQLstatements.
Currently,thereisseveralstandardizedandwidelyusedAPIstoaccessSQLdatabases,suchasODBC,JDBC,
andADO.Borlandalsoreleasedtheirproprietarydatabasemiddlewareinterfaceforitsdevelopmenttools,
calledtheBorlandDatabaseEngine(BDE).DespitebeingfreelydistributedwithBorlandspopularlineofap-
plicationdevelopmenttools,theBDEwasunpopularbecauseofcomplexitiesininstallationandpoorperfor-
mance.AsDelphibecameoneoftheleadingapplicationdevelopmenttoolsfortheWindowsplatform,individu-
alsandcompaniesproposedalternativeinterfacestotheBDE.These“BDEAlternatives”optimizedaccessto
thedatabasebydirectlyusingthenativedatabasedriver,providingperformanceandfeatureadvantageswithre-
specttotheBDE.
RealizingthelimitationsoftheBDE,BorlandproposedanewtypeofdatabaseinterfacecalleddbExpress.This
interfacewasdesignedtobrokeraccessbetweenDelphiandvirtuallyanyrelationaldatabasethrough3rdparty
drivers.BorlandsignificantlyimprovedtheperformanceofdbExpresswithrespecttotheBDE,buttheimple-
mentationwasbuggyandsupportedonlyalimitedsubsetofSQLthathamperedfunctionality.
TheZeosDatabaseObjectcomponentlibrary(ZeosLib)isoneofthebest-knownBDEalternatives.Originally
thelibrarywasdevelopedforMySQLandPostgreSQLdatabases,butsupportforothervendorswassoon
added.Duringthedevelopmentprocess,certainlimitationso