小弟学习Delphi遇到一个连接数据库的问题想请教各位大哥!
资料上这样写的:
----------------------------------------------------------------------------------------------------
当发布一个使用 ADO 连接的应用程序时,将连接字符串信息用UDL文件保存,程序读取UDL文件的信息,
这样,只需要更改UDL文件的内容,就可以完成连接字符串的更改。方法如下:
新建一个空白的文本文件
将文本文件改名为connect.udl
然后打开这个UDL文件,设置连接字符串
在程序中将刚才UDL文件信息传递给ADO组件的connectString 属性,DELPHI下的一个例子:
try
ADOConnection1.Connected := FALSE;
ADOConnection1.ConnectionString := 'FILE NAME='+ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Provider := ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Connected := false;
ADOConnection1.LoginPrompt := false;
except
exit;
end;
-----------------------------------------------------------------------------------------------------
于是我按照自己理解的做了一个连接。
过程如下: 1.在SQL Server 2000中建立一个数据库,数据库中建立一个表...
2.新建一个空白的文本文件 ,将文本文件改名为connect.udl 。
3.然后打开这个UDL文件,设置连接字符串。测试成功。
4.打开Delphi 7.0新建立一个工程。(此工程所有文件保存在connect.udl同一目录下。)
5.在form1的窗体上加了ADOConnection1
6.添加form1的OnCreate事件如下: procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOConnection1.Connected:=FALSE;
ADOConnection1.ConnectionString:='FILE NAME='+ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Provider:=ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Connected:=false;
ADOConnection1.LoginPrompt:=false;
showmessage('连接成功!');
except
showmessage('连接失败!');
exit;
end;
end;
出现的问题是: 无论我将SQLSERVER启动还是停止,都是显示的是“连接成功!”
可能是小弟没有正确理解资料上的含义,请各位大哥指点指点,帮帮我,小弟感恩不尽!
资料上这样写的:
----------------------------------------------------------------------------------------------------
当发布一个使用 ADO 连接的应用程序时,将连接字符串信息用UDL文件保存,程序读取UDL文件的信息,
这样,只需要更改UDL文件的内容,就可以完成连接字符串的更改。方法如下:
新建一个空白的文本文件
将文本文件改名为connect.udl
然后打开这个UDL文件,设置连接字符串
在程序中将刚才UDL文件信息传递给ADO组件的connectString 属性,DELPHI下的一个例子:
try
ADOConnection1.Connected := FALSE;
ADOConnection1.ConnectionString := 'FILE NAME='+ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Provider := ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Connected := false;
ADOConnection1.LoginPrompt := false;
except
exit;
end;
-----------------------------------------------------------------------------------------------------
于是我按照自己理解的做了一个连接。
过程如下: 1.在SQL Server 2000中建立一个数据库,数据库中建立一个表...
2.新建一个空白的文本文件 ,将文本文件改名为connect.udl 。
3.然后打开这个UDL文件,设置连接字符串。测试成功。
4.打开Delphi 7.0新建立一个工程。(此工程所有文件保存在connect.udl同一目录下。)
5.在form1的窗体上加了ADOConnection1
6.添加form1的OnCreate事件如下: procedure TForm1.FormCreate(Sender: TObject);
begin
try
ADOConnection1.Connected:=FALSE;
ADOConnection1.ConnectionString:='FILE NAME='+ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Provider:=ExtractFilePath(ParamStr(0))+'\connect.udl';
ADOConnection1.Connected:=false;
ADOConnection1.LoginPrompt:=false;
showmessage('连接成功!');
except
showmessage('连接失败!');
exit;
end;
end;
出现的问题是: 无论我将SQLSERVER启动还是停止,都是显示的是“连接成功!”
可能是小弟没有正确理解资料上的含义,请各位大哥指点指点,帮帮我,小弟感恩不尽!
解决方案 »
- 请教SQL查询语句
- 一个菜鸟的三层(SocketConnection)问题!
- ★★★★FastReport报表里自定义的纸张(147*106)打印时为什么自动变成A4的了?高手求救啊!!★★★★
- 求助寻找 vb rezq(vb反编译软件)
- 打印预览的问题,再次求救
- 郁闷,突然发现自己什么都不会!
- 有谁能帮我详解一下ADO的用法
- 一个简单的SQl server数据备份问题,在线等待
- 新手求救,数据表里的字段为数字,如何在dbgrid里对应字段显示汉字
- 很菜的问题,如何将memo中的字符存入table,存入的字段长度为255,存入字符长度不超过255(我计算过了),为何会出现错误信息:List inde
- 存储的jpg文件在pb中使用是提示非jpg文件
- 扫描枪问题
ConnectionString := 'Provider=SQLOLEDB.1;Password=yangekongzhi;Persist Security Info=True;User ID=kdxkuser;Initial Catalog=kdxk;Data Source=XX';XX是你的服务名称.
应该是True
----------------------------------------------------------------------------------------
ConnectionString := 'Provider=SQLOLEDB.1;Password=yangekongzhi;Persist Security Info=True;User ID=kdxkuser;Initial Catalog=kdxk;Data Source=XX ';
XX是你的服务名称.^_^ 如果这样设置的话,那程序外的connect.udl 文件根本就不会起到任何作用,
使用connect.udl 文件,当文件的连接信息改变时,可以将此系统连接不同的服务器。
如:将本系统移植到新的局域网,新的服务器名字不同与原来的服务器名。
移植时只需要将connect.udl 文件的设置改变。就可以连接上。
不需要修改程序就可以使该系统在新的网络上使用。
----------------------------------------------------------------------------------------
ADOConnection1.Connected:=false;
应该是True^_^ 这样设置的目的是:使程序中的ADOConnection1组件,不让其连接
而让其通过获得connect.udl 文件中的信息,按照connect.udl 文件中配置来进行连接。
----------------------------------------------------------------------------------------请各位路过的大哥帮小弟看看罗,回一两句指点一下好吗,谢谢啊!
ADOConnection1.Connected:=false;
改为
ADOConnection1.Connected:=true;
ADOConnection1.Connected:=false;
改为
ADOConnection1.Connected:=true;
的时候发现,当SQL服务关闭时会显示“连接失败!”
看来参考资料上的东西不能全信啊!可是,同时却发现了另一个奇怪的问题:就是:
当我把SQL服务关闭,执行时会显示“连接失败!”
单击“ok”后,form1的窗口还是会打开!
然后我将:
except
showmessage( '连接失败! ');
exit;
end;
改为:
except
showmessage( '连接失败! ');
form1.close;
end; 还是一样的情况! 似乎 showmessage( '连接失败!'); 语句后的exit; 或form1.close; 都不起作用了。请楼上的大哥帮小弟分析一下原因好吗? 小弟万分感谢啊!