set @kc_id=(select [id] from Kcjymxb_Cursor)
---------------------------------
--首先游标赋值不是这样用的,你可以看看OnLine help
游标也相当于指针,指定条来进行扫描赋值,如:
fetch next from Kcjymxb_Cursor into @kc_id ,@kc_djlx.....
---------------------------------
--首先游标赋值不是这样用的,你可以看看OnLine help
游标也相当于指针,指定条来进行扫描赋值,如:
fetch next from Kcjymxb_Cursor into @kc_id ,@kc_djlx.....
sql 是集合语言天生就是为记录的集合设计的,你的功能不用游标也作的出来 效率也会高很多你的游标的问题没看出来,看看别人怎么说吧
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 --改成这样试试
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
----------------------------
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 游标名