sql >> Databasteknik >  >> RDS >> Mysql

Kan MySql återställa en sql-transaktion över flera tabeller?

Ja, men bara för tabeller som stöder transaktioner. För att kontrollera om dina tabeller är kompatibla gör du så här

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

Om någon av dem är MyISAM , de är inte transaktionskompatibla. Du måste ändra dem alla till InnoDB

ALTER TABLE [TableName] ENGINE=InnoDB;

Men varnas - MyISAM stöder vissa funktioner som InnoDB inte har, såsom FULLTEXT-sökningar.



  1. Hur släpper man flera intervallpartitioner baserat på datum?

  2. Anslut bord från två olika servrar

  3. PHP MySQL autoslutförande

  4. JSON_REPLACE() – Ersätt värden i ett JSON-dokument i MySQL