delphi4.0怎样调用MS SQLsever7.0中的存储过程?(不好意思,因为有很多问题要问,所以只给50元了!) (50分)

  • 主题发起人 主题发起人 Harold
  • 开始时间 开始时间
H

Harold

Unregistered / Unconfirmed
GUEST, unregistred user!
我曾经用delphi4.0调用MS SQLsever6.5中的存储过程,程序运行正确。后来,我把MS SQLsever6.5升级到了MS SQLsever7.0,但此时SQL中的存储过程不能正确调用。可以在delphi的DBSourse中列出MS SQL存储过程的列表,并且可以在列表中选择需要的存储过程,程序运行时却显示***存储过程未找到。
 
Delphi 4和Sql Server 7 有不兼容的问题
解决办法
1: 升级到Delphi 5
2: 用一个query,用Execute 执行存储过程
 
补充
可以用ODBC
 
不大可能吧!
我用D4和SQL7写了好多程序,都没问题的
用ODBC试一试吧!
 
这个问题问过很多次了,我只好把别人的答案再来吹一遍:
1:使用BDE+ODBC连接,可以顺利的使用存储过程,担忧数据类型
兼容的问题(NVCHAR不认)
2:使用BDE+SQLLINK,没有数据类型兼容的问题,但是要动态赋值创建
和参数,例子如下:
with StoredProc1 do begin
ProcName := 'SP_XXX';
Params.clear;
Params.CreateParam(ftInteger, '@PARAM1', ptInput);
//接3个参数,看看Help
Params.CreateParam(ftInteger, '@PARAM2', ptOutput);
ExecProc;//如果返回结果集,就用Open
end;
这样,你就可以顺利的访问任何存储过程了。
 
Delphi 4和Sql Server 7 有不兼容的问题,升级到Delphi 5,连接sqlserver7.0时,不要用bde连接,用odbc方式连接,就一切ok!!!
 
窃以为,Delphi 4与SQL Server 7配合良好,但SQL的自动升级有问题,本人曾为此
焦头烂额,升级后重写存储过程,一切OK!
 
多人接受答案了。
 
后退
顶部