如何将SQL Server 2000 存储过程中输出参数的值赋给Delphi 的变量。
解决方案 »
- CXGRID的group问题
- pagecontrol下动态生成tabsheet并加入一个dbgrid控件
- 怎么样写这个函数
- 一家公司面试的题目,广征答案,最好的给分!最好给出源码.
- 为什么我打印出来的图片远远小于图片实际的大小!!
- 服务器程序关闭之后,所有的客户端程序立马全死?!100分求解
- 用过RealPlayer ActiveX的控件的朋友来看看! 急呀!
- 关于存储过程
- 在一个线程的Execute中,为什么不能使用两个不嵌套的循环?
- 在Delphi中怎样把(Float、Money)多位小数直接四舍五入到二位小数?(不用转到String,再转回)
- 请教 TVtChart或TDBChart的用例
- 怎样才能将图片加入到DrawGrid每一个网格中,在线等候.
然后 a:=Adostoreproc.parameters[输出参数位置].value;
try
ADOStoredProc := TADOStoredProc.Create(nil);
ADOStoredProc.Connection := ADOConnection; ADOStoredProc.ProcedureName := 'SCount';
ADOStoredProc.Parameters.CreateParameter('sid', ftInt, pdInput, 4, 0);
ADOStoredProc.Parameters.CreateParameter('sno', ftInt, pdInOutput, 20, name);///////////////////output参数
ADOStoredProc.Parameters.CreateParameter('Rcount', ftBoolean, pdReturnValue, 4, 0);/////////////////////////////////返回参数 ADOStoredProc.Prepared := True;
ADOStoredProc.ExecProc;
Result := ADOStoredProc.Parameters.ParamByName('sno').Value;///
Result := ADOStoredProc.Parameters.ParamByName('Result').Value;/////
finally
ADOStoredProc.Free;
end;
@a integer,@b integer,@c numerice output
AS
if @b<>0
set @c=@a/@b
else
set @c=0
调用:
******************
adoreturnid.Close;
adoreturnid.Parameters.ParamByName('@a').Value:=10;
adoreturnid.Parameters.ParamByName('@b').Value:=4;
adoreturnid.ExecProc;//要返回值必须用执行,不能用Open、Active:=true;
edit1.text:=adoreturnid.Parameters.parambyname('@c').Value;