MYSQL的外來鍵
關於MySQL外來鍵
前提條件:建立資料表使用InnoDB儲存引擎,欄位型別一致性,起初資料邏輯正確。
例如:ALTER TABLE `post`
ADD CONSTRAINT `FK_post_author` FOREIGN KEY (`author_id`) REFERENCES `adminuser` (`id`) ON DELETE CASCADE;
1 . cascade方式
在父表上update/delete記錄時,同步update/delete掉子表的匹配記錄
2. set null方式
在父表上update/delete記錄時,將子表上匹配記錄的列設為null
要注意子表的外來鍵列不能為not null
3. No action方式
如果子表中有匹配的記錄,則不允許對父表對應候選鍵進行update/delete操作
4. Restrict方式
同no action, 都是立即檢查外來鍵約束
5. Set default方式
父表有變更時,子表將外來鍵列設定成一個預設的值 但Innodb不能識別
相關文章
- mysql建立外來鍵語句MySql
- 教你mysql如何增加外來鍵約束MySql
- mysql不能新增外來鍵約束怎麼辦MySql
- Mysql truncate table時解決外來鍵關聯MySql
- MySQL 用隨機資料填充外來鍵表MySql隨機
- 外來鍵的變種
- 主鍵和外來鍵
- sqlserver外來鍵SQLServer
- indexedDB 內鍵與外來鍵Index
- 新的主鍵和外來鍵的語法
- 10.30 索引,外來鍵索引
- 外來鍵約束
- MySQL之外來鍵MySql
- mysql~資料完整性考慮~外來鍵約束MySql
- 如何在MySQL資料庫中定義外來鍵ZMMySql資料庫
- 通過外來鍵找主鍵
- oracle外來鍵約束的總結Oracle
- 【MySQL】MySQL進階(外來鍵約束、多表查詢、檢視、備份與恢復)MySql
- 約束外來鍵筆記筆記
- django外來鍵如何賦值Django賦值
- 為什麼不用外來鍵
- 關於外來鍵約束
- MySQL:slave 延遲一列 外來鍵檢查和自增加鎖MySql
- openGauss-外來鍵鎖增強
- 實現 MongoDB 外來鍵關聯MongoDB
- SQL外來鍵約束的含義及建立SQL
- Javaweb-約束-外來鍵約束JavaWeb
- Django(15)外來鍵和表關係Django
- AppBoxFuture(七): 分散式外來鍵約束APP分散式
- 資料庫:外來鍵是什麼資料庫
- mysql 外來鍵索引入門介紹,為什麼工作中很少有人使用?MySql索引
- django | 為 model 定義邏輯外來鍵Django
- 通過外來鍵連線多個表
- 為什麼大家很少使用外來鍵了?
- 外來鍵欄位未建索引引發的死鎖索引
- Typescript 下 Mongoose 外來鍵型別&外來鍵陣列型別定義&型別保護&聯合型別理解TypeScriptGo型別陣列
- 20240722-0725 資料庫外來鍵報錯資料庫
- 如果新增欄位是外來鍵,如何處理?