Ruby 求助:使用 SqlServer 数据库,事务无法回滚

528070506 · 2025年05月09日 · 144 次阅读
begin
   ActiveRecord::Base.transaction do
     create_date(hash)
   end
 rescue => exception
   puts "创建合同单失败------------------"
   Rails.logger.error "创建合同单失败------------------"
   Rails.logger.error exception.message

 end

  def create_date(hash)
     User.create!(hash)
     Email.create!(hash)
     hash[:循环].each do |a|
       a.create!(hash)
    end
     raise '发送报错'
  end

示例代码,异常已经抛出 但是无法回滚,LOG 里的 TRANSACTION (0.5ms) BEGIN TRANSACTION 也存在,好奇怪

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请 注册新账号