sql >> Database >  >> RDS >> Mysql

Grails transactie setSavePoint methode op mysql veroorzaakt uitzondering

Standaard hebben de transactiemanager voor slaapstand en MySQL de opslagpunten niet ingeschakeld.

Voeg in BootStrap.groovy het volgende toe:

transactionManager.setNestedTransactionAllowed(true)

Vervolgens kunt u in een transactie het volgende doen:

Thing.withTransaction { status ->
  //Do some work and a save
  def savePoint = status.createSavepoint()
  //do other work
  if(checkOk)
  {
    //Everything worked so don't need the save point anymore
    status.releaseSavepoint(savePoint)
  }
  else
  {
    //The other work did not work so rollback from it.
    status.rollbackToSavepoint(savePoint)
  }

}



  1. De meest recente samengevoegde records per week samenvoegen

  2. Hernoem een ​​door de gebruiker gedefinieerd gegevenstype in SQL Server (T-SQL)

  3. Wanneer werkt MySQL de indexen bij?

  4. Maak een nieuwe MySQL-database met Workbench