--声明游标cur_delete_table
--Forward_Only:游标智能从第一行滚到最后一行
--Read_Only:不能通过游标对数据进行删改
declare cursor_1 cursor Forward_Only Read_Only for
select DOSAGE FROM [dbo].[recipe_cnt] where ISNUMERIC(DOSAGE) =1
declare @DOSAGE_1 varchar(20),@DOSAGE_2 numeric(8,3)
--打开游标
open cursor_1
--提取游标结果集当前位置的下一行插入到变量中
FETCH NEXT from cursor_1 into @DOSAGE_1
--@@FETCH_STATUS获得提取状态信息,0成功,-1失败或行不在结果集中,-2提取的行不存在
WHILE @@FETCH_STATUS = 0
begin
begin try set @DOSAGE_2 = CONVERT(numeric(8,3),@DOSAGE_1) end try
begin catch select @DOSAGE_1,error_message() end catch
FETCH NEXT from cursor_1 into @DOSAGE_1
end
--关闭游标,删除游标
CLOSE cursor_1
DEALLOCATE cursor_1
sql server游标写法
最新推荐文章于 2022-11-22 22:57:41 发布