我的存储过程类似如下:
CREATE PROCEDURE Test
as
declare @QueryStr varchar(8000)
set @QueryStr = 'select * from table1'
exec(@Queyrstr)我在Delphi中用TADOStoredProc控件得不到返回的结果集啊,但在查询分析器里可以得到结果集啊!

解决方案 »

  1.   

    ADOStoredProc.open
    不用不能返回结果集的
      

  2.   

    楼上的哥们,你试试用open能打的开吧?
      

  3.   

    是你存储过程本身的问题你把存储过程改成
    CREATE PROCEDURE fw_test
    as
    declare @sqlstr varchar(8000)
    set @sqlstr = 'select * from table1'
    exec(@sqlstr)然后这样调用肯定没问题,我试验过了.@QueryStr这个本身好像有点问题with ADOStoredProc1 do
    begin
      ProcedureName:='fw_test';
      open;
    end;
      

  4.   

    执行型存储过程用ADODataSet或ADOQuery来执行啊,
    ADODataSet.close; 
    ADODataSet.CommandText:='exec Test';
    ADODataSet.Open; 

    ADOQuery.close; 
    ADOQuery.Sql.Text:='exec Test';
    ADODataSet.Open; 
    这不就OK了啊。