请求帮助,应用程序服务器连接数据库的问题(200分)

  • 主题发起人 主题发起人 大头白痴
  • 开始时间 开始时间

大头白痴

Unregistered / Unconfirmed
GUEST, unregistred user!
各位高手,请教一个问题
我用MIDAS+DCOM连接+SQL SERVER 7.0,然后问题是这样的,当我的CLIENT连接应用程序
服务器后,如果应用程序服务器连接不上SQL SERVER,客户端将处于死锁状态,或者客户
端用COMMANDTEXT请求一个错误的SQL语句
(语法错误时出现,比如SELECT * FROM XXXWHERE <-注意这里,XXX和WHERE未有空格)
时也会发生这种死锁的问题,而且在ADOCONNECTION里设置TIMEOUT也没作用,不知道
如果把错误传回客户端.
另外一问题就是DCOM如何利用SOCKETS5来和应用程序服务器进行代理通讯?
谢谢大家了
 
我觉得在应用服务器端应该对query这样
try
query.xxx
.....
....
finally
query.close;
end;
 
做个ERROR FORM吧,FILE-NEW-ERROR DIALOG之类
 
谢谢各位,我说的不是数据更新进发生错误的处理,而是当应用程序服务器无法连接上数据
库服务器的时候,客户端根本就没有反应,就是说当运行的时候数据库服务器死掉或者不
见了,应用程序服务器连接不上去,然后客户端就死掉了,不管等多长时间,就这样死锁了.
 
SQL里面是不是有什么触发器有语法错误
 
没有,我没有在里面做任何解发器
 
还是用socket连接吧,保证你很快就出错误提示,不会死锁。
 
问题在你的应用程序服务器上,你应仔细地检查一下。
 
听来听去,还是SOCKET好啊,呵呵,那DCOM有事件功能啊,多好啊,CALLBACK我总觉得不太好,
5555555555,我只能用UDP来向CILENT发信息了,大家还有更好的方法吗?我要换SOCKET了,
55555555
 
可以用CORBA呀,不过你最好BCB或JB
 
从两个方面着手:
1、在应用程序服务器中添加一个可以处理连接数据库的方法,在不能够成功连接时
发送信息回客户程序,并切断连接;
2、增加一个可以处理语法错误的方法。
具体要看你的应用程序服务器和客户程序,可以大概说明一下吗?
 
应该使用异常处理,然后返回错误给客户端,不就解决了吗!
 
兄弟们,你们看看看看,我还是觉的ADO不是很好的东西,至少没有BDE成熟,可惜谁叫老BILL
有MONEY呢,
原因是这样的,我为了提高一点点感觉上的速度把ADO组件设置成了异步运行,不想ADO的异
步运行远没有做的很完美,所以出现这种错误再所难免,看来懒不得了,还是要自己动手比
较可靠一点吧,哈哈,可怜现在程序改也不能改了,只能用同步方式来做了.......5555
兄弟们,分分了,大家平均分哦,呵呵呵,字数最多的同志多得一分哦
 
完了?拿点分!
 
上几天不知道为什么,不能发分,唉,不好意思
 
后退
顶部