楼主这是跟踪sql执行得到的结果吧?

解决方案 »

  1.   

    设置的东西就不说了,看联机帮助就知道是什么意思了
    declare @P1 int
    --set @P1=1  --这个是不要的,是执行下面的语句后产生的--创建一个调用指定sql语句的指针,并且保存到变量@p1中
    exec sp_prepare @P1 output, NULL, N'SELECT * FROM sysobjects', 1
    select @P1--执行上面准备好的sql语句
    exec sp_execute @P1--释放
    exec sp_unprepare @P1
      

  2.   

    大哥好厉害啊,的确是跟踪
    不过有这个后面
    SET NO_BROWSETABLE ON
    declare @P1 int
    set @P1=1
    exec sp_prepare @P1 output, NULL, N'SELECT * FROM ALLSum', 1
    select @P1
    没有
    exec sp_execute @P1
    是为什么,是不是select @P1就执行了
      

  3.   

    说了要去掉set @P1=1嘛,这个不能先赋值
      

  4.   

    而没有
    exec sp_execute @P1是正常的,如果不返回结果集的时候,就不需要执行sp_execute
      

  5.   

    谢谢 zjcxc(邹建) 大哥不返回结果集
    那 SELECT * FROM ALLSum 取出来的结果集能用程序读出来么?
    是不是 SELECT * FROM ALLSum 已经返回给用户了,
    还有个值没有返回了抱歉,大哥,比较蠢^_^
      

  6.   

    --创建一个调用指定sql语句的指针,并且保存到变量@p1中(只是创建,并不执行)
    exec sp_prepare @P1 output, NULL, N'SELECT * FROM sysobjects', 1
    select @P1