我做了一个数据软件,功能是连接局域网中一台SQL服务器,读取服务器中视图的数据连接方式是软件客户端没有使用SQL客户端,只是使用连接语句来连接服务器数据库连接语句如下:
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;'+
'User ID=sa;Initial Catalog=UFDATA_002_2009;Data Source=192.168.1.23';现在问题是,软件在使用的过程会提示"连接失败",重新开启软件后又一切正常.到底是什么原因造成,而又应如何解决呢?请大侠们多指教小弟.
ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;'+
'User ID=sa;Initial Catalog=UFDATA_002_2009;Data Source=192.168.1.23';现在问题是,软件在使用的过程会提示"连接失败",重新开启软件后又一切正常.到底是什么原因造成,而又应如何解决呢?请大侠们多指教小弟.
解决方案 »
- 指针问题请教。无法把指针地址赋值到全局变量是怎么回事?
- Flash中的as脚本的readutfbytes在delphi中是什么函数?
- 关于命令行方式编译工程文件.dpr
- 关于以listbox中的一项为查询条件进行查询的问题.....
- 求助: 各位高手关注一下, 如何通过字符串类名创建类实例???????????????????
- canvas does not allow drawing 求助
- 一个lookup字段问题(帮助说可以,可是我试了不行啊)
- 一个关于DELPHI连接ACCESS的问题
- 串中通信中如何将0x00随同其他码一同传出
- 急!!!!!!(高分酬谢!!!!)实现直接 调用win2000 server里自带的自动更新程序!
- 如何不使用ADO对ACCESS数据库进行存取?
- 求助关于线程的创建和调用的基本问题,刚接触线程不是很懂,谢谢大家
如果是网络问题,应该如何解决在断开后立即重连的问题呢?还请指教.
c/s 下出現這種問題你一定要接受數據集數據丟失的問題。
看什麼情況而定,我是定時發一個 getdate(), 如果失敗了就重新連接。
CommandTimeout:=0;
应该数据量大时会提示超时,而不是连接失败,问题关键的地方就是提示了"连接失败"后,重新开启软件,操作又一切正常.
這樣子就不會超時了。定是發 getdate(),
是這樣一個意思。
try
adoquery1.closer;
adoquery1.sql.text := 'select getdate()';
adoquery1.open;
except
raise;
end;
有點像TCP/IP中的心跳,在執行關執數據上傳前,這樣先探測下。
然后ADOConnection1.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;'+
'User ID=sa;Initial Catalog=UFDATA_002_2009;Datarce=192.168.1.23';再ADOConnection1.open;试试。