Mysql
 sql >> Baza danych >  >> RDS >> Mysql

ON DELETE CASCADE nie działa w MySQL

Aparat pamięci masowej MyISAM nie obsługuje ograniczeń kluczy obcych. Ograniczenie jest analizowane, ale po cichu ignorowane.

Aby rozwiązać problem, użyj silnika InnoDB (dla obu tabel).

CREATE TABLE ( ... ) ENGINE = InnoDB ... ;

Zamiast upuszczać tabele i je odtwarzać, możesz również zmienić silnik przechowywania:

ALTER TABLE myDB.app_info ENGINE = InnoDB;
ALTER TABLE myDB.tab_info ENGINE = InnoDB;

Po zmianie silnika będziesz musiał ponownie dodać ograniczenie klucza obcego.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak uzyskać aktualną datę i godzinę w MySQL?

  2. Jak zaimportować plik sql do bazy danych ignorując X wierszy w pliku?

  3. Oblicz decyla z częstotliwości w MySQL

  4. MySQL — warunkowe COUNT z GROUP BY

  5. Importowanie csv do mysql za pomocą wiersza poleceń