回答网友关于DBExpress的问题----一幅凝固的油画

发表于:2007-05-25来源:作者:点击数: 标签:问题DBExpress网友回答关于
朋友,你好 DBExpress是 Borland 公司推出的基于单项数据集的 数据库 引擎技术。因为是单向数据集,因此连接数据库非常的快。在Borland看来,DBExpress被期望用来取代BDE和ADO。 到目前为止,DBExpress支持如下数据库,至于更新的版本有待 测试 : Inerbase7

朋友,你好

        DBExpress是Borland公司推出的基于单项数据集的数据库引擎技术。因为是单向数据集,因此连接数据库非常的快。在Borland看来,DBExpress被期望用来取代BDE和ADO。

        到目前为止,DBExpress支持如下数据库,至于更新的版本有待测试
   
    Inerbase7.5
    MSSQL2000
    Oracle9i2
    DB2
    MySQL
    PostgreSQL
    Sybase ASE 12.5
    Informix

    上述的几种数据库已经经过我的测试,看来是好用的。

  DBExpress技术包括DBExpress组件技术,DBExpress驱动程序和DataSnap技术。使用DBExpress技术,一定要用DataSnap,否则便失去了DBExpress基于多层分布式技术的意义。

    由于DBExpress是单向数据集技术,因此,直接使用它只能从前向后访问记录,不可逆转。于是在Delphi7中,增加了一个TSimpleDataSet组件,用它来暂时的满足两层结构的直接数据集访问。

  但是,这并不是Borland推荐的方式。事实上,DBExpress+TSQLConnection+TSQLQuery+TDataSetProvider才是最好的访问方式。对于两层结构而言,采用TClientdataset之类的客户数据集连接TDataSetProvier,就可以了访问数据库了;对于三层或者多层结构而言,你必须在客户端采用DataSnap连接组件,比如Dcom,Corba,Tsocketconnection等,然后采用Tclientdataset等客户数据集连接该组件,通过该组件连接服务器上的某个tdatasetprovider。这样就可以满足你的所有数据库访问需求了。

   因此,无论是几层结构,Borland始终推荐采用上述DBExpress+TSQLConnection+TSQLQuery+TDataSetProvider的方式访问数据库。

   遗憾的是,Borland公司的优秀技术永远超前于其市场拓展能力。DBExpress终究敌不过Ado.net,除了在Delphi2005中继续提供支持外,Borland似乎更看好不太成熟的支持.net的BDP(Borland Database Provider)技术。

   不过,我还是喜欢DBExpress,至少在win32下,它是最好的数据库访问引擎。

   需要提醒的是,你必须要熟悉dbxconnection.ini文件,在你的应用系统中动态装载它,这样才能灵活发布。此外,每一种数据库都有一个dbexpress驱动:

   db2:       dbexpdb2.dll
   informix:  dbexpinf.dll
   interbase: dbexpint.dll
   mssql:     dbexpmss.dll
   mysql:     dbexpmys.dll/dbexpmysql.dll
   oracle:    dbexporal.dll
   sybase:    dbexpsyb.dll

   上述驱动不可缺少,Borland并未完全提供,你可以去网络下载

   建议:你最好做一个构件,把DBExpress访问数据的方式封装起来,只需要初始化这个组件并且访问其中某个方法,就可以了。

   祝你成功。

一幅凝固的油画


原文转自:http://www.ltesting.net