数据库事务性操作

SQL Server 2000 事务操作

1.事务操作实例一

--事务开始
begin transaction
    insert student(sno,sname,ssex,sage,sdept)
       values('200200005','王五','男',20,'IS')
if @@error<>0
   begin
      print '添加学生记录时出错!'
      return
   end
--存储记录点
save transaction befor_insert_score
insert sc
   values('200200003','8',90)
if @@error<>0
   begin
      --回滚操作
      rollback transaction befor_insert_score
      print '添加成绩记录出错!'
      return
   end
commit transaction 

2.事务操作实例二(与上例有什么区别?)

--事务开始
begin transaction
--存储记录点
save transaction befor_insert_student
    insert student(sno,sname,ssex,sage,sdept)
       values('200200005','王五','男',20,'IS')
if @@error<>0
   begin
      print '添加学生纪录时出错!'
      return
   end
save transaction befor_insert_score
insert sc
   values('200200005','8',90)
if @@error<>0
   begin
      --回滚操作
      rollback transaction befor_insert_student
      print '登记记录出错!'
      return
   end
commit transaction

思考题
1.存在帐户表(帐户编号,帐户名,金额)
进行如下操作: 将帐户A的金额3000转入帐户B。
为了保证安全,要求使用事务操作。

2.学生表、课程表和选课表
进行如下操作:取消一门课程。
提示:先删除对应该门课程的选课记录,然后再删除该门课程。(要求使用事务性操作方法)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值