小李子

小小的蜗牛,慢慢的爬。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

UNIDAC

Posted on 2012-02-27 14:27  ljl_falcon  阅读(1854)  评论(0编辑  收藏  举报

用过ODAC,SDAC,MyDAC,IBDAC,PgDAC(分别支持Oracle、MSSQL、MYSQL、IB/FB、 PostgreSQL)等都知道,Corelab公司的数据集驱动非常不错,取数非常快,性能稳定。Corelab的DBX驱动也是做的非常不错。相 反,Borland的DBX除了IB驱动做的可以之外,其他的DBX驱动BUG不断,尤其是oracle的驱动。但ODAC,SDAC,IBDAC这些产 品分别只能连接一种数据数据库,不仅增加了用户的消费投入,对多种数据库连接也造成诸多不便!由此,Corelab(后来改名为devart)统一了 ODAC,SDAC,MyDAC,IBDAC,PgDAC,将多种的数据库组件集成在一起,改名为UniDAC。

UniDAC由于融合了多种数据库连接,手动安装有点麻烦。虽然可以用Source目录下的Make.BAT文件,稍改一下delphi不同版本的Bin路径,但我等有点安装delphi控件经验的人,最喜欢直接用DPK文件去安装。安装步骤如下(以D7为参照):

1、找到source\delphi7目录,所有的DPK文件都在这里。

2、编译DAC 运行包,即dac70.dpk。

3、如果是D6或D7,编译DAC GUI related package,即dacvcl70.dpk。

4、编译DAC运行包,即dcldac70.dpk。

5、如果是D6或D7,编译unidacvcl70.dpk。

6、分别编译驱动包:PG/ORA/MSSQL/MYSQL/IB的驱动包。

7、编译安装UniDAC设计包,即 dclunidac70.dpk。

需要注意的是,

1、UniDAC和ODBC的驱动包有冲突。

2、UniProviders下的驱动包INC文件,诸如IbDac.inc、Odac.inc等,默认不是专业版,请在这些Inc文件中,添加一句 {$DEFINE UNIDACPRO},避免在运行期中找不到一些特定的文件。

3、DPK文件中的Option似乎有问题,最好是改为OutPut Directory改为,输出到delphi的默认路径(projects\BPL\),Unit OutPut Directory是指为".",输出到当前路径下。

4、最后一点也是老生常谈的一点,别忘给IDE的library路径添加UniDAC路径,即Source的路径。

 

Universal Data Access Components Source Code
Copyright 1997-2010, Devart. All Rights Reserved

There are two ways to compile and install UniDAC for Windows manually.

I. Using IDE

Delphi and C++ Builder for Win32
--------------------------------

Run your IDE and walk through folowing steps:
  1) Compile DAC run-time package (dacXX.dpk)
  2) Compile DAC GUI related package dacvclXX.dpk
  3) Compile DAC design-time package (dcldacXX.dpk)
  4) Compile UniDAC run-time package (unidacXX.dpk)
  5) Compile UniDAC GUI related package (unidacvclXX.dpk)
     If you are going to create CLX applications compile UniDacClx.pas unit separately.
  6) Compile and install UniDAC design-time package (dclunidacXX.dpk)
  7) Compile providers packages:
    oraproviderXX.dpk, msproviderXX.dpk, myproviderXX.dpk, ibproviderXX.dpk,
    pgproviderXX.dpk, liteproviderXX.dpk, odbcproviderXX.dpk.
    After you have compiled odbcproviderXX.dpk, compile providers that use ODBC:
    accessproviderXX.dpk, adsproviderXX.dpk, aseproviderXX.dpk, db2providerXX.dpk.

You can find these packages in 
  Source\Delphi6\*.dpk - for Delphi 6 
  Source\CBuilder6\*.bpk - for C++ Builder 6
  Source\Delphi7\*.dpk - for Delphi 7 
  Source\Delphi9\*.dpk - for Delphi 2005
  Source\Delphi10\*.dpk - for BDS 2006
  Source\Delphi11\*.dpk - for RAD Studio 2007
  Source\Delphi12\*.dpk - for RAD Studio 2009
  Source\Delphi14\*.dpk - for RAD Studio 2010
  Source\Delphi15\*.dpk - for RAD Studio XE

To compile UniDAC based application add UniDAC Source directory path 
to the "Library Path".

Delphi for .NET
-----------------

Run your IDE and walk through folowing steps:
  1) Compile DAC run-time package (Devart.Dac.dpk)
  2) Compile DAC design-time package (Devart.Dac.Design.dpk)
  3) Compile UniDAC run-time package (Devart.UniDac.dpk)
  4) Compile and install UniDAC design-time package (Devart.UniDac.Design.dpk)
  5) Compile providers packages:
    Devart.UniDac.Oracle.dpk, Devart.UniDac.SQLServer.dpk, Devart.UniDac.MySQL.dpk,
    Devart.UniDac.InterBase.dpk, Devart.UniDac.PostgreSQL.dpk,
    Devart.UniDac.SQLLite.dpk, Devart.UniDac.ODBC.dpk.
    After you have compiled Devart.UniDac.ODBC.dpk, compile providers that use ODBC:
    Devart.UniDac.Access.dpk, Devart.UniDac.Advantage.dpk, Devart.UniDac.ASE.dpk,
    Devart.UniDac.DB2.dpk.
  6) Specify the path to compiled assembles in "Assembly Search Paths"

You can find these packages in 
  Source\Delphi9\*.dpk - for Delphi 2005
  Source\Delphi10\*.dpk - for BDS 2006
  Source\Delphi11\*.dpk - for RAD Studio 2007

To compile UniDAC based application add Devart.Dac and Devart.UniDac to 
Namespace prefixes, add UniDAC Source directory path to the "Library Path" list.

II. Using make-files

Delphi and C++ Builder for Win32
--------------------------------

  1) Go to one of the following folders (let's denote this folder %MakePath%):
     Source\Delphi6 - for Delphi 6
     Source\CBuilder6 - for C++ Builder 6
     Source\Delphi7 - for Delphi 7
     Source\Delphi9 - for Delphi 2005
     Source\Delphi10\*.dpk - for BDS 2006
     Source\Delphi11\*.dpk - for RAD Studio 2007
     Source\Delphi12\*.dpk - for RAD Studio 2009
     Source\Delphi14\*.dpk - for RAD Studio 2010
     Source\Delphi15\*.dpk - for RAD Studio XE

  2) Find in the 'Make.bat' line containing 

     set IdeDir="D:\Program Files\Borland\Delphi7

     and make sure that correct path to IDE is set (always include forward
     quote and do not include ending quote)

  3) Run 'Make.bat'. Binaries will be copied to %MakePath%\UniDac subfolder
  4) Copy %MakePath%\UniDac\*.bpl files to a folder that is included in the
     PATH environment variable
  5) Run IDE and add dclunidacXX.bpl via Component->Install Packages... menu 
  6) To compile UniDAC based application add UniDAC Source directory path 
     to the "Library Path" list

Delphi for .NET
-----------------

  1) Go to the following folders (let's denote this folder %MakePath%):
     Source\Delphi9\*.dpk - for Delphi 2005
     Source\Delphi10\*.dpk - for BDS 2006
     Source\Delphi11\*.dpk - for RAD Studio 2007

  2) Find in the 'Make.bat' line containing 

     set IdeDir="D:\Program Files\Borland\BDS\4.0

     and make sure that correct path to IDE is set (always include forward
     quote and do not include ending quote)

  3) Run 'Make.bat'. Binaries will be copied to %MakePath%\UniDac subfolder
  4) Run IDE and add Devart.UniDac.Design.dll via Component->Installed 
     .NET Components->.NET VCL Components->Add... menu. Specify the path to compiled assembles 
     in Component->Assembly Search Paths->Add... menu

  6) To compile UniDAC based application add Devart.Dac and Devart.UniDac to 
     Tools->Options->Environment Options->Delphi Options->Library->
     Namespace prefixes