不是存储过程返回的!直接就在存储过程内部的,在存储过程内部处理数据的分析!
这个不是,运行存贮过程的命令阿!execute sp_executesql我现在写的不是存贮过程,,无法直接指定的!
怎么办啊!
我要哭了!

解决方案 »

  1.   

    不好意思!我搞错了!sp_executesql它是一个存贮过程!
    但是
    如何动态的生成一个光标阿!因为我的数据库名,表名都是动态生成的,无法直接指定的!
    怎么办啊?
      

  2.   

    /*
    就是下面的这个意思
    我如何动态创建光标,比如我的表名是动态生成的如@t,那么那个SQL语句写呢?现在问题是要用光标来实现
    */
    Declare @t nvarchar(10);
    DECLARE @CursorVar CURSORset @t = 'titles';
    SET @CursorVar = CURSOR SCROLL DYNAMIC FOR SELECT * FROM @t;DEALLOCATE @CursorVar;
      

  3.   

    建议你看看数据库帮助SQL SERVER动态创建的同样可以用普通方法获得游标。
      

  4.   

    数据库帮助SQL SERVER动态创建的同样可以用普通方法获得游标?
    我找了!没找到阿!哎呀!能帮我运行一下这个SQL吗?
    Use pubs;
    DECLARE @s_cursor CURSOR;
    DECLARE @SQL_Select nvarchar(1024);
    set @SQL_Select = N'DECLARE my_cursor CURSOR GLOBAL FOR Select * From titles';execute sp_executesql @SQL_Select;execute sp_executesql
    N'Set @cursor = my_cursor',
    N'@cursor CURSOR OUTPUT',
    @cursor = @s_cursor OUTPUT;execute sp_executesql N'DEALLOCATE my_cursor';OPEN @s_cursor;
    --CLOSE @s_cursor;
    DEALLOCATE @s_cursor;
    -----------------------------------------------------------
    返回消息:
    -----------------------------------------------------------
    服务器: 消息 16950,级别 16,状态 2,行 15
    当前没有为变量 '@s_cursor' 分配游标。
    服务器: 消息 16950,级别 16,状态 2,行 17
    当前没有为变量 '@s_cursor' 分配游标。
    -----------------------------------------------------------
    表示光标并没有被成功获取阿!
    怎么办呢!
    乌~~~~~~~~!
      

  5.   

    去SQL SERVER 版块找大力问问。
      

  6.   

    该问题已解决,看是不是你想要的结果:
    Use pubs;
    DECLARE @s_cursor CURSOR;
    DECLARE @SQL_Select nvarchar(1024);
    set @SQL_Select = N'DECLARE my_cursor CURSOR GLOBAL FOR Select * From titles';execute sp_executesql @SQL_Select;
    OPEN my_cursor;-----应在此处打开游标execute sp_executesql
    N'Set @cursor = my_cursor',
    N'@cursor CURSOR OUTPUT',
    @cursor = @s_cursor OUTPUT;execute sp_executesql N'DEALLOCATE my_cursor';
    CLOSE @s_cursor;
    DEALLOCATE @s_cursor;
      

  7.   

    yown(yong) 何方神圣?
    我爱死你了!
    分数全部给你了!
    不够的话说,我给你!你还厉害了!