手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>程序设计>delphi>列表

精简DELPHI数据库系统的补充

来源:互联网 作者:西部数码 时间:2008-04-09
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!
  在网上看到一篇文章《精简DELPHI数据库系统》,本人依实际操作经验,觉得其文小有疏漏,有必要在此加以补充。
  大家都知道,用DELPHI做数据库虽然方便,但发布时必需同时分发BDE(Borland公司的32位数据库引擎),全部文件需17兆之巨,如此怎么还能彰显DELPHI的优越性呢?!所以程序员在用DELPHI做数据库时,如何根据实际情况精简BDE是必不可少的一步。

BDE中各文件的具体作用,可以参考BDE32.HELP中Introduction to Borland Database Engine/Core BDE files 在此只以我作的一个数据库为例谈谈精简BDE的具体步骤。

  程序使用PARADOX数据库,用到了TQUERY和TBACHMOVE控件,BDE文件如下:

blw32.dll 国际语言驱动支持,必需

Bantam.dll 未查到相关解释,缺少会引起BDE初始化错误

idapi32.dll 数据驱动基本函数集,必需

fareast.btl 东方语言驱动程序,使用中文必需

idr20009.dll 错误信息,必需

charset.cvb 字符集转换,如用到CHARSET_GB2312,则必不可少

idbat32.dll 批量移动数据支持(针对TBATHMOVE控件)

idpdx32.dll PARADOX数据库驱动程序

idsql32.dll SQL查询引擎(针对TQUERY控件)

IDAPI.CFG BDE配置文件,存储数据库别名,必不可少

  共10个文件,2.3M,ZIP后830K,以前用VFP需要3张软盘的桌面数据库,现在一盘搞定.

  除了拷贝BDE文件外,还要对系统进行一些设置工作,具体程序如下:

procedure TForm1.FormCreate(Sender: TObject);

var stl:tstringlist;

myrg:tregistry;

i:integer;

path:string;

begin :p>

path:=extractfilepath(application.ExeName); //获得当前路径;

stl:=tstringlist.Create ;

myrg:=tregistry.Create;

myrg.RootKey :=HKEY_LOCAL_MACHINE;

try

IF NOT myrg.KeyExists(software\Borland) then

begin //检查相应键值以确定BDE是否注册/当前数据库程序是否初次运行;

showmessage(初次使用,系统将进行必要设置!);

myrg.OpenKey(software\Borland\Database Engine,true);

myrg.WriteString(DLLPATH,path bde); //写入数据驱动程序所在目录

myrg.closekey;

myrg.OpenKey(software\Borland\BLW32,true);

myrg.WriteString(BLAPIPATH,path bde); //写入语言驱动程序所在目录

myrg.CloseKey;

session.GetAliasNames(stl); //获取已注册的数据库别名列表

for i:=0 to stl.Count-1 do begin

session.DeleteAlias(stl.Strings[i]); //删除所有别名,否则无法重新写入

session.SaveConfigFile;

end;

session.AddStandardAlias(hz,path db\total,paradox);//注册自己需要的数据库别名

session.SaveConfigFile;

END;

finally

myrg.Free;

stl.Free;

end;

end;

本程序在WIN98下DELPHI4中运行通过.

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!