hap*_*ile 2 sql-server sql-server-2005
我有一个返回单行的select语句.之后我写了一个游标,就像我@@ fetch_status是-1一样,它现在不进入游标内部
open cur_mkt
print @init
While (@init = 0)
Begin
fetch next from cur_mkt into
@Desc,
@Divisions
print @@fetch_status
if (@@fetch_status =-1)
BREAK
Run Code Online (Sandbox Code Playgroud)
有什么方法可以进入光标,请帮帮我.
Ada*_*Dev 11
这听起来不像你需要一个光标(你应该尽量避免使用它).如果您确定是否存在结果,您可以执行以下操作:
SELECT @Desc = Desc, @Divisions = Divisions
FROM YourTable
WHERE ID = 1
IF ( @@ROWCOUNT > 0 )
BEGIN
-- Row was found
END
Run Code Online (Sandbox Code Playgroud)
所以我建议不要使用游标.
要直接回答这个问题,你使用游标/迭代结果的方式如下:
DECLARE @A INTEGER
DECLARE cur_mkt CURSOR FOR
SELECT 1 AS A
UNION ALL
SELECT 2 AS A
OPEN cur_mkt
FETCH NEXT FROM cur_mkt INTO @A
WHILE (@@FETCH_STATUS = 0)
BEGIN
PRINT @A
FETCH NEXT FROM cur_mkt INTO @A
END
CLOSE cur_mkt
DEALLOCATE cur_mkt
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14161 次 |
| 最近记录: |