MySQL 是一個非常強大的關系型數據庫管理系統。當我們需要在兩個表中建立關聯關系時,我們經常需要執行聯查(JOIN)操作。在這種情況下,我們通常還需要刪除涉及到聯查操作的兩個表中的相關記錄。在 MySQL 中,通過外鍵關聯以實現自動刪除與插入的功能。
CREATE TABLE author ( id INT UNSIGNED PRIMARY KEY, name VARCHAR(100) NOT NULL, email VARCHAR(100) NOT NULL ) ENGINE=INNODB; CREATE TABLE book ( id INT UNSIGNED PRIMARY KEY, title VARCHAR(200) NOT NULL, author_id INT UNSIGNED NOT NULL, FOREIGN KEY (author_id) REFERENCES author(id) ON DELETE CASCADE ) ENGINE=INNODB;
在上面的代碼中,我們定義了兩個表,一個是作者(author)表,另一個是書籍(book)表。在書籍表中,我們將作者 ID 定義為外鍵,以實現與作者表之間的關聯。此外,我們還通過 ON DELETE CASCADE 屬性設置了外鍵自動刪除,即當我們從作者表中刪除一條記錄時,它所相關的書籍記錄也將自動被刪除。
DELETE FROM author WHERE id = 1;
執行上面的代碼后, MySQL 將自動刪除 ID 為 1 的作者記錄,并且與他相關的書籍記錄也將自動被刪除。這就是在 MySQL 中使用外鍵關聯實現自動刪除的方法。
上一篇vue ip