sql >> Database teknologi >  >> RDS >> Mysql

Kan MySql rulle tilbage en sql-transaktion over flere tabeller?

Ja, men kun for tabeller, der understøtter transaktioner. For at kontrollere, om dine tabeller er kompatible, skal du gøre dette

SELECT table_name
     , engine
  FROM information_schema.tables t
 WHERE t.table_name IN('Table1','Table2','Table3');

Hvis nogen af ​​dem er MyISAM , de er ikke transaktionskompatible. Du bliver nødt til at ændre dem alle til InnoDB

ALTER TABLE [TableName] ENGINE=InnoDB;

Men vær advaret - MyISAM understøtter nogle funktioner, som InnoDB ikke gør, såsom FULLTEXT-søgninger.



  1. AUTONOMOUS_TRANSACTION

  2. Laravel Sum kolonnedatabase Veltalende

  3. MySQL-databasedesign til en liste over tjenester

  4. Oracle - Fejl:'ORA-01400:kan ikke indsætte NULL i