调用存储过程时返回空值会报错 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就会很正常,如果没有就会报错,我希望不返回时就不要报错,直么都不显示
[解决办法]
if not ADOQueryTmp.IsEmpty then MsgBoxinfo(trim(ADOQueryTmp.FieldByName('result').asstring));
[解决办法]
改存储过程会好点
即没有记录返回时,则执行一个SQL语句,比如 select 'no result'