BDE 是Delphi数据库功能的枢纽部分,所有数据库存取使用的例程,均需要通过BDE 来处理,因此BDE是连接应用程序和数据库的桥梁。它是由几个DLL 模块组成的,各模块分别负责处理一些数据库的相关工作。如果机器上装有其它版本或重复的BDE ,那么BDE是按照下列的搜索顺序来载入BDE 的DLL 文件( Idapi32. dll) 并将BDE 初始化的:
1) 搜索当前目录(当前目录与应用程序的启动目录不一定不同);如果没有找到该文件,将继续;
2) 搜索注册表HKEY-LOCAL - MACHINE \ SOFTWARE\ Borland \ Database Engine \ DLLPATH \ xxxxx中所对应的项目;如果没有找到该文件,将继续;
3) 按照装载库文件的先后顺序来进行搜索:即应用程序的当前启动目录→System目录→Windows 目录→PATH 环境参数中所设置的路径。
装载驱动程序DLL 文件的先后顺序,除了第一步的搜索路径要换为Idapi32.dll 这个文件被载入的目录之外,其它基本跟上面一样。而且BDE为一些DLL 文件预留了某些首选内存地址,如果相应的BDEDLL 文件不能被载入那些特定的首选内存地址时,系统将出错误信息并使初始化失败。
BDE是一个过程化的数据库访问接口,通过它可以建立数据库别名(DataBasealias)。使Delphi访问数据库别名中的各种数据表。
BDE在Delphi中扮演着重要角色。如果Delphi应用程序提出一个对数据库的请求,这个请求一定要通过BDE提交给数据库管理系统,数据库管理系统响应应用程序的请求,把查询结果通过BDE传送到Delphi应用程序。对于只在单机上使用的本地数据库而言,Delphi通过BDE来控制数据库中数据的读写。对于后台远端的数据库系统而言。BDE尚需通过SQLLINKS或ODBC(Open DataBase ConnectivityDrivers)才能读取数据库的内容。
BDE提供一种32位的基于win32的数据库引擎,可以访问多种数据库主要特点:具有存取各种主流数据库的统一接口,直接访问数据原;对paradox和dbase数据库提供优先引擎,支持基于c/s模式的数据库应用;集成的数据库引擎支持不同数据之间的查询,复制等 *** 作。支持sql并可以访问基于sqlserver的数据库;支持多线程缺点:bde仅适用于borland系列的产品ADO技术提供了一个一致的。高性能的,高兼容性的数据访问接口,既能实现数据库的前端创建,又能实现中间层的设计。ado的应用范围涵盖了从一层到多层数据库应用的解决方案。
我没有看见过这样的书.只有一些例子介绍BDE的部署.
转一个希望有帮助:
InstallShield Express for delphi制作安装程序定制BDE引擎 (转)
使用Delphi编写数据库程序,在发布程序的同时还需要发布BDE(Borland Database Engine),但BDE占用空间较大,如Delphi5就有17.4M之多,远比一般的程序本身要大。实际上,有些文件根本用不上,所以我们可以在发布时用Delphi附带的InstallShield Express for delphi制作安装程序来定制BDE引擎,这样就可以达到为我们的数据库应用程序“减肥”的目的。
下面介绍BDE引擎的各关键文件的作用,我们以此作为精简BDE驱动程序的依据:
一、不可缺少的文件
Blw32.dll:语言驱动函数库。
Idapi32.dll:BDE基本函数库。
Fareast.btl、Usa.btl:远东语言及美国语言驱动程序,对中文软件不可缺少。
Idr20009.dll:错误信息库。
二、数据库驱动程序(根据需要选择一个或多个)
Idasci32.dll:Ascii文本数据库驱动程序函数库,如果不用Ascii文本数据库,可以不要。
Iddao32.dll:Access数据库驱动程序函数库,如果不用Access数据库,可以不要。
Iddbas32.dll:dBase数据库驱动程序函数库,如果不用dBase数据库,可以不要。
Idodbc32.dll:ODBC数据库驱动程序函数库,如果不用ODBC数据库,可以不要。
Idpdx32.dll:Paradox数据库驱动程序函数库,如果不用Paradox数据库,可以不要。
三、其它驱动程序和配置文件(根据需要选择一个或多个)
Idbat32.dll:批 *** 作驱动程序函数库,如果不用TBatchMove控件或DbiBatchMove类函数,可以不要。
Iddr32.dll:Data Repository驱动程序函数库,如果不用Data Repository功能,可以不要。
Idprov32.dll:BDE DataSet provider驱动程序函数库,如果不用TProvider控件,可以不要。
Idqbe32.dll:QBE驱动程序函数库,如果不用Query By Example,可以不要。
Idsql32.dll:SQL查询驱动程序函数库,如果不用TQuery进行查询,可以不要。
Idapi32.cfg:BDE配置文件,如果程序中没有特殊要求,可以不要。也可以在BDE管理器中设置正确后再分发。
四、其它文件(一般不用)
其它的*.BTL:其它国家和地区的语言驱动程序,可以不要。
BDE32.HLP、BDE32.CNT:BDE帮助文件,可以不要。
BdeAdmin.exe、BdeAdmin.HLP、BdeAdmin.CNT:BDE管理器及帮助文件,如果不会发生要求软件用户自己配置BDE的情况时,可以不要。
DataBump.EXE、DataBump.HLP、DataBump.CNT:数据库数据转移工具及帮助文件,可以不要。
Localsql.HLP、Localsql.CNT:SQL查询语句帮助文件,可以不要。
Sqllnk32.HLP、Sqllnk32.CNT:SQL连接帮助文件,可以不要。
根据需要选择文件后,还要写注册表文件。需要设置的注册表键值有:
数据驱动程序所在目录的设置:
HKEY_LOCAL_MACHINESoftwareBorlandDatabase EngineDLLPATH(字符串值)
语言驱动程序所在目录的设置:
HKEY_LOCAL_MACHINESoftware BorlandBLW32BLAPIPATH(字符串值)
语言驱动程序文件名:
HKEY_LOCAL_MACHINE SoftwareBorlandBLW32LOCALE_LIB#(字符串值) 其中#为编号,按顺序为0、1、2、3......如:
HKEY_LOCAL_MACHINESoftwareBorlandBLW32LOCALE_LIB0="fareasst.btl" HKEY_LOCAL_MACHINESoftwareBorland BLW32LOCALE_LIB1="usa.btl"
做完这些就足够了,按此办法即可有效减少BDE驱动程序的大小,例如只用TTable控件 *** 作Paradox数据库,则只要Idapi32.dll、Blw32.dll、Idr20009.dll、Fareast.btl、Usa.btl、Idpdx32.dll六个文件即可。这些文件可放在任何一个目录,只要在注册表指明即可。BDE由17.4M减到1.48M,压缩一下就只有几百K了,这使程序大为减小。
下面我们就以用InstallShield Express for Delphi5.0来制作一个Paradox数据库应用系统的安装程序为例:
1. 启动InstallShield Express for Delphi5.0程序;
2. 设置New project对话框中有关文件目录路径,3. 然后进入Setup Checklist;
4. 在Set the Visual Design中设置程序名5. 、程序目录、安装程序主窗口等信息;
6. 在Specify Installshield objects for delphi5 中设置General Options,7. 选择BDE数据库引擎;
8. 在Specify Components and Files中设置Groups and Files项,9. 在Program Files中加入用户的所有程序文件和数据库表文件,10. 在BDE/IDAPI Files中删除除Idbat32.dll、Usa.btl、Idapi.cfg、Charset.cvb、Bantam.dll、BLW32.dll、Idapi32.dll、Fareast.btl、Idpdx32.dll、Idr20009.dll、Idsql32.dll以外的文件;
11. 在Dialog Boxes中设置所需安装对话框;
12. 在Make Registry Changes中设置Keys项,13. 在HKEY_LOCAL_MACHINE中加入softwareborlandblw32和softwareborlanddatabase engine两项,14. 并且在blw32的值中加入 “Blapipath ‘以上文件路径’”、“LOCALE_LIB0 ‘以上文件路径’Fareast.dll”和“LOCALE_LIB1 ‘以上文件路径’Usa.dll”,15. 在database engine值中加入“Dllpath ‘以上文件路径’”、“Configfile01 ‘以上文件路径’Idapi.cfg”;
16. 在Specify Folder and Icons中根据实际要求设置有关项目;
17. 在Run Disk Builder中设置安装盘的有关信息;
18. 最后进行Test the Installation和Create Distribution Media即可完成安装程序的制作。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)