首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

调用存储过程时返回空值会报错 commandtext does not return a result set,该怎么处理

2012-03-09 
调用存储过程时返回空值会报错 commandtext does not return a result setADOQueryTmp : nilADOQueryTmp

调用存储过程时返回空值会报错 commandtext does not return a result set
ADOQueryTmp := nil;
  ADOQueryTmp := TADOQuery.Create(ADOQueryTmp);
  ADOQueryTmp.Connection := Data1.ADOConnection1;
  begin  
  s_sql:='EXEC PR_WLCRKSH '+CRKid+',1,'''+Frm_Main.User_Name+''','''+computername1+'''';
  ADOQueryTmp.SQL.Clear ;
  ADOQueryTmp.SQL.Add(s_sql) ;
  ADOQueryTmp.open;
MsgBoxinfo(trim(ADOQueryTmp.FieldByName('result').asstring));

程序没有问题,如果调用存储过程返回result就会很正常,如果没有就会报错,我希望不返回时就不要报错,直么都不显示

[解决办法]

Delphi(Pascal) code
if not ADOQueryTmp.IsEmpty then  MsgBoxinfo(trim(ADOQueryTmp.FieldByName('result').asstring));
[解决办法]
改存储过程会好点

即没有记录返回时,则执行一个SQL语句,比如 select 'no result'

热点排行