Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL при каскада за изтриване. Пример за тест

Отговор d. е правилно, ако и само ако механизмът за съхранение действително поддържа и налага ограничения на външния ключ.

Ако таблиците са създадени с Engine=MyISAM , тогава нито b. или г. е правилно.

Ако таблиците са създадени с Engine=InnoDB , след това г. е правилно.

ЗАБЕЛЕЖКА:

Това е вярно за InnoDB, ако и само ако FOREIGN_KEY_CHECKS = 1; ако FOREIGN_KEY_CHECKS = 0 , след това DELETE от родителската таблица (foo) не премахнете редове от дъщерната таблица (foo2), които препращат към ред, премахнат от родителската таблица.

Проверете това с изхода от SHOW VARIABLES LIKE 'foreign_key_checks' (1=ВКЛ., 0=ИЗКЛ.)(Нормалното подразбиране е това да е ВКЛЮЧЕНО.)

Резултатът от SHOW CREATE TABLE foo ще покаже кой двигател използва таблицата.

Резултатът от SHOW VARIABLES LIKE 'storage_engine' ще покаже двигателя по подразбиране, използван, когато е създадена таблица и машината не е посочена.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Актуализирайте колоната в базата данни, където максималната стойност е php mysql

  2. Използване на OpenVPN за защитен достъп до вашия клъстер от база данни в облака

  3. Засяване на SQLite RANDOM()

  4. Създайте MySQL съхранена процедура с помощта на JPA Hibernate

  5. Не може да се свърже с MySQL сървър грешка 111