set @kc_id=(select [id] from Kcjymxb_Cursor)
---------------------------------
--首先游标赋值不是这样用的,你可以看看OnLine help
游标也相当于指针,指定条来进行扫描赋值,如:
fetch next from Kcjymxb_Cursor into @kc_id ,@kc_djlx.....

解决方案 »

  1.   

    天哪。 
    sql 是集合语言天生就是为记录的集合设计的,你的功能不用游标也作的出来 效率也会高很多你的游标的问题没看出来,看看别人怎么说吧
      

  2.   

    set @kc_id=(select [id] from Kcjymxb_Cursor)
    set @kc_djlx=(select djlx from Kcjymxb_Cursor)
    set @kc_spbh=(select spbh from Kcjymxb_Cursor)
    set @kc_rq=(select rq from Kcjymxb_Cursor)
    set @kc_spsl=(select spsl from Kcjymxb_Cursor)
    set @kc_spdj=(select spdj from Kcjymxb_Cursor)
    set @kc_spje=(select spje from Kcjymxb_Cursor)
    set @kc_jslb=(select jslb from Kcjymxb_Cursor)
    set @kc_jcsl=(select jcsl from Kcjymxb_Cursor)
    set @kc_jcdj=(select jcdj from Kcjymxb_Cursor)
    set @kc_jcje=(select jcje from Kcjymxb_Cursor)--这是什么写法呢?fetch next from Kcjymxb_Cursor into @kc_id,@kc_djlx,@kc_spbh,@kc_rq,@kc_spsl,@kc_spdj,@kc_spje,@kc_jslb,@kc_jcsl,@kc_jcdj,@kc_jcje --改成这样试试
      

  3.   

    游标用法不对,请参考下面帮助
    FETCH
    从 Transact-SQL 服务器游标中检索特定的一行。语法
    FETCH
            [ [ NEXT | PRIOR | FIRST | LAST
                    | ABSOLUTE { n | @nvar }
                    | RELATIVE { n | @nvar }
                ] 
                FROM
            ] 
    { { [ GLOBAL ] cursor_name } | @cursor_variable_name } 
    [ INTO @variable_name [ ,...n ] ]A. 在简单的游标中使用 FETCH
    下例为 authors 表中姓以字母 B 开头的行声明了一个简单的游标,并使用 FETCH NEXT 逐个提取这些行。FETCH 语句以单行结果集形式返回由 DECLARE CURSOR 指定的列的值。USE pubs
    GO
    DECLARE authors_cursor CURSOR FOR
    SELECT au_lname FROM authors
    WHERE au_lname LIKE "B%"
    ORDER BY au_lnameOPEN authors_cursor-- Perform the first fetch.
    FETCH NEXT FROM authors_cursor-- Check @@FETCH_STATUS to see if there are any more rows to fetch.
    WHILE @@FETCH_STATUS = 0
    BEGIN
       -- This is executed as long as the previous fetch succeeds.
       FETCH NEXT FROM authors_cursor
    ENDCLOSE authors_cursor
    DEALLOCATE authors_cursor
    GO
      

  4.   

    参考:游标格式
    ----------------------------
    Declare 游标名 cursor for Select 字段1,字段2,...,字段n from  表名
    Declare @变量1,@变量2,...,@变量n
    open 游标名
    fetch next  from 游标名 into @变量1,@变量2,...,@变量n
    while @@FETCH_STATUS=0 
     begin
      ... 
      你的处理语句
      ...
      fetch next  from 游标名 into @变量1,@变量2,...,@变量n
    endclose 游标名
    deallocate 游标名