请问我的midas怎么取不到数据啊(5分)

  • 主题发起人 主题发起人 serenesky
  • 开始时间 开始时间
S

serenesky

Unregistered / Unconfirmed
GUEST, unregistred user!
我的数据库是Sql Server,应用程序服务器用的是ado,客户端用的是soketconnect
我的存储过程的语句如下:
CREATE procedure usp_getorgextmaxcompanyid
@maxcompanyid varchar(7) output
as
select max(companyid)
from org_ext
在SQl Server中是正确的返回了值
我在其应用程序服务器的RDS中添加了如下的method
procedure Tcustomermanagement.GetMaxcompanyid(var MaxID: OleVariant);
begin
adostoredproc1.Close;
adostoredproc1.open;
MaxID:=adostoredproc1.Parameters[1].value;
adostoredproc1.open;
//form1.Button1.Caption:= MaxID;
end;
但是当我在客户端调用其方法
procedure Tclientquiry.Button3Click(Sender: TObject);
var
vID:variant;
begin
dbmoduel.SocketConnection1.AppServer.GetMaxcompanyid(vID);
end;
用watch看却看到vID是空值,该如何办呀
请问各位大侠。
另外我从客户端通过应用程序服务器从数据库取得一些东西时
除了用数据集组件外,还有其他方法吗
主要是因为有时候数据集组件取数据效率比较低
 
你的存儲過程本身就返回了空值吧
還有adostoredproc1.Parameters[1]的數組下標是從0開始的
不知道你要取的數據是第幾個值?
 
to lynu
3x
不是空值,是因为在sql server中parameters[0]为默认的return_value值
我们可控的parmameters下标是从1开始的
 
后退
顶部