sql >> Databasteknik >  >> RDS >> Mysql

Grails transaktion setSavePoint-metoden på mysql orsakar undantag

Som standard har transaktionshanteraren för viloläge och MySQL inte spara poäng aktiverade.

Lägg till följande i BootStrap.groovy:

transactionManager.setNestedTransactionAllowed(true)

Sedan i en transaktion kan du göra följande:

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. Hur kan jag ändra databaskodning för en PostgreSQL-databas med sql eller phpPgAdmin?

  2. Hur hanterar man fel för dubbla poster?

  3. Failover &Failback för PostgreSQL på Microsoft Azure

  4. Forcera indexanvändning i Oracle