У меня есть две таблицы в MySQL database- parent, child. Я пытаюсь добавить ссылки на внешние ключи в мою дочернюю таблицу на основе родительской таблицы. Есть ли существенная разница между ON UPDATE CASCADEиON DELETE CASCADE
Мой родительский стол
CREATE TABLE parent (
id INT NOT NULL,
PRIMARY KEY (id)
) ENGINE=INNODB;
Мой вопрос: в чем разница между следующими SQL-запросами.
ON DELETE CASCADECREATE TABLE child ( id INT, parent_id INT, INDEX par_ind (parent_id), FOREIGN KEY (parent_id) REFERENCES parent(id) ON DELETE CASCADE ) ENGINE=INNODB;ON UPDATE CASCADECREATE TABLE child ( id INT, parent_id INT, INDEX par_ind (parent_id), FOREIGN KEY (parent_id) REFERENCES parent(id) ON UPDATE CASCADE ) ENGINE=INNODB;ON UPDATE CASCADE ON DELETE CASCADECREATE TABLE child ( id INT, parent_id INT, INDEX par_ind (parent_id), FOREIGN KEY (parent_id) REFERENCES parent(id) ON UPDATE CASCADE ON DELETE CASCADE ) ENGINE=INNODB;
Есть ли ошибки в запросах? Что означают эти запросы (1,2 и 3) ?? Они такие же ???