请教一个类型转换 ,谢谢(20分)

  • 主题发起人 主题发起人 新的自我
  • 开始时间 开始时间

新的自我

Unregistered / Unconfirmed
GUEST, unregistred user!
您好, Sql Server 2000 中,存储过程如下 :

CREATE proc Sp_Gz
@name char(20),@gz Float output
as
begin
select @gz = money from yg where name = @name
end
--------------------------------------------------------------
调用:
with ADOStoredProc2 do
begin
Parameters.ParamByName('@name').Value := 'pp' ;
ExecProc ;
P: Label1.Caption := FloatToStr(Parameters.ParamByName('@gz').Value) ;
end;
其中 参数 @Gz : DataType = ftFloat
Direction = pdOutput
P 行类型转换出错 ,为何 ?都是 Float 呀
 
P: Label1.Caption := FloatToStr(Parameters.ParamByName('@gz').Value.asFloat);

P: Label1.Caption := Parameters.ParamByName('@gz').Value.asstring;
 

楼上,你的方式不太对 :)
 
问题找到了,
Parameters.ParamByName('@name').Value := 'pp' ;
pp 没有记录对应 ,故 gz 为 null ,Null 转换为 Float 时出错

谢谢,楼上的楼上,也谢谢您
 
多人接受答案了。
 
后退
顶部