delphi5用ado连接oracle,在2000专业版下出现问题!急!(在线等待)

cdchq 2002-12-06 05:00:30
最近用delphi5给客户做一程序,现在基本完工了。但是出现一问题。
此程序用ado+oracle8.1.7,连接数据库语句如下:
StrConn:='Provider=MSDAORA.1;User ID=user;Password=pwd;Persist Security Info=True;';
DataMod.ADOConn.ConnectionString:=StrConn;
try
DataMod.ADOConn.Connected:=True
except
on E:EOleException do
Application.MessageBox(PChar(E.Message),'错误',MB_OK);
end;
程序运行通过,但在装最后一台客户机时出现问题。
这台客户机操作系统是win2000专业版,一执行上面的语句,就出现如下错误提示
“发现了一个oracle错误,但无法从oracle中恢复错误信息"

其它客户机均运行正常,不过系统不是2000专业版。

请问你们碰到过类似情况吗??可能的原因是什么??
...全文
50 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
长风破浪 2002-12-09
  • 打赏
  • 举报
回复
用ado+odbc,查询出来的整形数值都变成了0
长风破浪 2002-12-09
  • 打赏
  • 举报
回复
我也在被这个问题困惑,用ado+odbc没问题,直接用ole就是不行,bde也没问题
cdchq 2002-12-09
  • 打赏
  • 举报
回复
人来
cdchq 2002-12-09
  • 打赏
  • 举报
回复
没人知道了?
smilelhh 2002-12-09
  • 打赏
  • 举报
回复
啊,,,不好意思了,这个问题就没有遇见过了.
cdchq 2002-12-09
  • 打赏
  • 举报
回复
自己顶
cdchq 2002-12-09
  • 打赏
  • 举报
回复
问题上写了的啊。如下:
“发现了一个oracle错误,但无法从oracle中恢复错误信息"
smilelhh 2002-12-09
  • 打赏
  • 举报
回复
那么出错提示是什么?
cdchq 2002-12-09
  • 打赏
  • 举报
回复
smilelhh(blue)
你的连接字串错了。

再说一次,我的连接字串应该没问题,因为在其它10多台机器上都没问题,也不可能是数据库配置的问题,所有机器的配置都是一样的,这点我已检查过10多次了。

我就觉得奇怪,在出问题的这台机器上,用sqlplus都能连上并操作数据,为什么我的程序会出错?
smilelhh 2002-12-09
  • 打赏
  • 举报
回复
再一次测试后回答你:

你将它改成:

StrConn:='Provider=MSDAORA.1;User ID=user;Password=pwd;Persist Security Info=True;Data Source=DBServer'

祝好运!
cdchq 2002-12-09
  • 打赏
  • 举报
回复
明月清风
我用的是StrConn:='Provider=MSDAORA.1;User ID=user;Password=pwd;Persist Security Info=True;Data Source=DBSource;Server Name=DBServer'

我这里一共有20多台客户机,在其它机器上都没问题,就在这台上出现这个错,不知怎么回事,用oracle自带的sqlplus都能连接成功,可是我的程序一运行就出错!
广州接入 2002-12-07
  • 打赏
  • 举报
回复
我试着用ADOTable控件连接数据库,在设计时直接用下拉框不能赋表名时出错,但
我直接把表名给它(虽然报错但我还是写完表名),然后Active=true。居然连上了,而且数据也出来了。

我很少使用ADO,今天帮你测试了一下,和ODBC差不多。
祝你好运!
zch619 2002-12-07
  • 打赏
  • 举报
回复
up
广州接入 2002-12-07
  • 打赏
  • 举报
回复
我已经测试成功
Provider=MSDAORA.1;Password=jinzhun;User ID=jinzhun;Data Source=jz
广州接入 2002-12-07
  • 打赏
  • 举报
回复
Provider=MSDAORA.1;Password=password;User ID=fgyh;Data Source=fg
smilelhh 2002-12-07
  • 打赏
  • 举报
回复
conn:='Provider=Sybase.Oracle8ADOProvider.2;Password=pass;User ID=user;Data Source="";Persist Security Info=True;ServerName=servername';

联oracle是不能用MSDAORA.1的换成Sybase.Oracle8ADOProvider.2看看
lybdata 2002-12-07
  • 打赏
  • 举报
回复
手工连一下,对一下不就知道了么?
cdchq 2002-12-06
  • 打赏
  • 举报
回复
急啊,请指教。

用oracle的sqlplus都能连上。
cdchq 2002-12-06
  • 打赏
  • 举报
回复
加上了servername一段,还是不行啊!
Billy_Chen28 2002-12-06
  • 打赏
  • 举报
回复
我用的SQLSERVER,在局域网里,是这样做的:
dm.SQLSERVERbsCon.Connected:=false;
dm.SQLSERVERbsCon.ConnectionString:='';
dm.SQLSERVERbsCon.ConnectionString:='Provider=SQLOLEDB.1;Persist Security Info=False;'+'User ID=sa;Initial Catalog=bs;Data Source=billy';
dm.SQLSERVERbsCon.Open;
ORCALE应该相似。
加载更多回复(1)

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧