您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> MSSQL >> 更新游标当前的数据,始终提示出错。

更新游标当前的数据,始终提示出错。

来源:网络整理     时间:2018/1/23 0:50:03     关键词:

关于网友提出的“ 更新游标当前的数据,始终提示出错。”问题疑问,本网通过在网上对“ 更新游标当前的数据,始终提示出错。”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 更新游标当前的数据,始终提示出错。

解决方案1:

sqlserver 临时表 变量表那么好用的何必用游标。

  • (2)提示错误:当前记录集不支持更新。这可能是提供程序的限制,也可能是选定锁定类型的限制。

解决方案2:

你的代码没问题,可能哪里有无效字符,如中文空格之类的,另外如果单实现你要的效果,不需要用光标,你先这么处理根本就是高级语言的思路,不算数据库思路
你只要用一条语句就行了


UPDATE score set sscore=60.0 WHERE sscore<60

  • 在线访谈:解决jQuery异步获取数据,客户端始终不更新的问题

解决方案3:

我这样测试着也可以,你试试

--测试数据
if not object_id(N'Tempdb..#T') is null
    drop table #T
Go
Create table #T([sid] int,[sscore] int)
Insert #T
select 1,80 union all
select 2,60 union all
select 3,50
Go
--测试数据结束
DECLARE my_cursor CURSOR
FOR
    SELECT  *
    FROM    #T FOR UPDATE
DECLARE @id NCHAR(10)
DECLARE @score FLOAT
OPEN my_cursor
FETCH NEXT FROM my_cursor INTO @id, @score
WHILE @@FETCH_STATUS = 0
    BEGIN
        IF ( @score < 60 )
            UPDATE  #T
            SET     sscore = 60.0
            WHERE CURRENT OF my_cursor
        FETCH NEXT FROM my_cursor INTO @id, @score
    END
close my_cursor
deallocate my_cursor
SELECT * FROM #T

 更新游标当前的数据,始终提示出错。

  • jQuery弹出层始终垂直居中,相对于屏幕,相对于当前窗口

解决方案4:

检查了没语法错误,估计是你自己那里出问题了
这个需求一句update 就可以搞定,没必要用游标的
UPDATE score set sscore=60.0 where score < 60

  • 利用游标遍历数据表或者数据集

解决方案5:

游标一定比自己用临时表或表变量的实现效率低?????

  • 无线传感器网络测量数据出错

解决方案6:

不用游标,效率太低,试试这样

--测试数据
if not object_id(N'Tempdb..#T') is null
drop table #T
Go
Create table #T([sid] int,[sscore] int)
Insert #T
select 1,80 union all
select 2,60 union all
select 3,50
Go
--测试数据结束
UPDATE #T SET sscore=60 WHERE sscore<60
SELECT * FROM #T

 更新游标当前的数据,始终提示出错。
  • "Windows Update 时提示当前无法检查更新,因为未运行服务"解决办法


以上介绍了“ 更新游标当前的数据,始终提示出错。”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/4533214.html

相关图片

相关文章