首页 > 其他 > 详细

一个游标的简单操作(use transaction)

时间:2015-03-27 08:46:11      阅读:838      评论:0      收藏:0      [点我收藏+]

注意:将游标封装在事务中可以防止操作不完整性======+脏读

begin try
begin transaction
DECLARE @Name varchar(10),
        @Sex bit,
        @Married bit,
        @Phone char(10),
        @ChineseSex char(2),
        @ChineseMarried char(4)
DECLARE Studio_Cursor CURSOR FOR 
  SELECT 姓名, 员工性别, 婚姻状况, 电话号码 FROM 飞狐工作室
OPEN Studio_Cursor
FETCH NEXT FROM Studio_Cursor 
  INTO @Name, @Sex, @Married, @Phone
WHILE @@FETCH_STATUS = 0
BEGIN
    PRINT ‘员工姓名: ‘ + @Name
    IF (@Sex = 1)
       SET @ChineseSex = ‘男‘
    ELSE
       SET @ChineseSex = ‘女‘

    IF (@Married = 1)
       SET @ChineseMarried = ‘已婚‘
    ELSE
SET @ChineseMarried = ‘未婚‘

    PRINT ‘性   别: ‘ + @ChineseSex
    PRINT ‘婚姻状况: ‘ + @ChineseMarried
    PRINT ‘电话号码: ‘ + @Phone
    PRINT REPLICATE(‘-‘,30)

    FETCH NEXT FROM Studio_Cursor
      INTO @Name, @Sex, @Married, @Phone
END
CLOSE Studio_Cursor        
DEALLOCATE Studio_Cursor 
commit transaction
end try

begin catch
print error_message()
rollback transaction
raiserror(‘Error occurred when excuting‘,23,1)
end catch

一个游标的简单操作(use transaction)

原文:http://www.cnblogs.com/Penfield/p/4370792.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!