发布时ADO连接数据库如何设置?(300分)

  • 主题发起人 主题发起人 张利中
  • 开始时间 开始时间

张利中

Unregistered / Unconfirmed
GUEST, unregistred user!
后端数据库是SQL server, 在DELPHI中用ADOConnection连接数据库
发布时,因为Installfield Express只有BDE设置项,没有关于ADO连接
的设置项,打包后,运行时出现"访问数据库失败“错误提示。
我该如何在打包中设置关于ADO类型的数据连接?
 
在安装后调用自已写的程序来安装和设置数据库连接,很方便的。
我做过,很方便的,要不要给你源程序?
 
只要安装SQLServer的几个客户端动态库,不需要设置,或者用什么.UDL文件.
 
1、对于ADO程序的发布,不需要再单独发布其它的动态连接库。在InstallShield中只要
直接打包就行了,不用把BDE选上。
2、运行程序的机器上如果是Win98SE,WinMe,Win2K不需要再单独安装其它的东东直接就可以
使用。但是如果是Win95,Win97,Win98的机器就要安装ADO包:MDACXX.Exe,以提供ADO的
接口。最新的MDAC是2.6版的可以到M$或cakk.126.net下载。如果找不到,Delphi5安装光
盘上的也可以用,只不过是2.1版的。(在光盘上用查找MD*.exe就可以找到)
3、因客户运行程序时的环境与你开发程序时的环境不同(主要是SQLServer服务器名不同),所
以在程序中应该对ADOConnection的连接字符串进行重新设置。具体的操作过程有三种(我想
到的),一是动态生成连接字符串相关的讨论请自己查询已答问题;一是调用ADODB单元的
PromptDataSource函数生成这个字符串,具体用法请看帮助;还有就是直接提供一个*.udl文件
在程序中直接用*.udl来提供连接,这样就可以在客户机上直接配置连接了。
 
可以使用注册表或者ini文件的形式来记录连接字符串,在第一次使用软件的时候
要求用户输入server name,login name,pasword,然后在程序中生成连接串即可.
如果非要在打包时设置就必须在设计一段程序,来生成连接串,存到某个ini文件中
或者注册表中.
 
[red]请及时提前或结束您的问题,谢谢合作![/red]
 
更好的,将ConnectString存到注册表。
要得到ConnectString的值,用下面的语句:
Uses ADODB;
Function GetConnectString(InitStr:String):String;
begin
Result:=PromptDataSource(InitStr);
end;
 
不要存在注册表,在2000下有的用户没有写注册表权限的,还是写在一个文件 里吧
 
多人接受答案了。
 
后退
顶部