mysql啟動和關閉外來鍵約束
當刪除具有外來鍵約束的表中資料時,
[SQL]TRUNCATE table itcast_privilege
[ Err ] 1701 - Cannot TRUNCATE a TABLE referenced IN a FOREIGN KEY CONSTRAINT (
`itcastoa0720`.`itcast_role_privilege`,
CONSTRAINT `FK350BD81DB0E19C6E` FOREIGN KEY (`privilegeId`) REFERENCES `itcastoa0720`.`itcast_privilege` (`id`)
)
我們執行語句檢視錶的外來鍵約束資訊
SELECT
*
FROM
information_schema.TABLE_CONSTRAINTS t
WHERE
t.TABLE_NAME = 'itcast_privilege'
AND CONSTRAINT_TYPE = 'FOREIGN KEY';
我們檢視該表的FOREIGN_KEY_CHECKS的值
SELECT @@FOREIGN_KEY_CHECKS;
我們可以控制FOREIGN_KEY_CHECKS,來開啟或關閉外來鍵約束
如果值為1啟動外來鍵約束,如果值為0表示禁用外來鍵約束所以當出現外來鍵約束無法刪除資料是,可以選擇禁用外來鍵約束,之後再次開啟。
SET FOREIGN_KEY_CHECKS=0;
TRUNCATE TABLE itcast_privilege
SET FOREIGN_KEY_CHECKS=1;
相關文章
- 關於外來鍵約束
- 教你mysql如何增加外來鍵約束MySql
- 外來鍵約束
- Javaweb-約束-外來鍵約束JavaWeb
- mysql不能新增外來鍵約束怎麼辦MySql
- 約束外來鍵筆記筆記
- mysql~資料完整性考慮~外來鍵約束MySql
- AppBoxFuture(七): 分散式外來鍵約束APP分散式
- oracle外來鍵約束的總結Oracle
- Mysql-基本練習(06-唯一約束、外來鍵約束、新增、刪除單列)MySql
- SQL外來鍵約束的含義及建立SQL
- Mysql關於資料庫是否應該使用外來鍵約束詳解說明創磅MySql資料庫
- 【MySQL】MySQL進階(外來鍵約束、多表查詢、檢視、備份與恢復)MySql
- MySQL啟動和關閉命令總結MySql
- 主鍵約束、唯一約束和唯一索引索引
- 生成指令碼,得到所有表的外來鍵約束,然後刪除並重建這些約束指令碼
- [20180423]關於閃回表與主外來鍵約束.txt
- 3 啟動和關閉
- 聊聊Oracle外來鍵約束(Foreign Key)的幾個操作選項Oracle
- MySQL 約束MySql
- Laravel 學習總結二:get () 和 first () 的區別、@each () 的用法和新增外來鍵約束Laravel
- MYSQL的外來鍵MySql
- 批量刪除MSSQL 中主外來鍵約束SQL
- MySQL 中的約束及相關操作MySql
- 資料遷移無法新增外來鍵約束,錯誤程式碼 1215
- Django(15)外來鍵和表關係Django
- Mysql truncate table時解決外來鍵關聯MySql
- mysql 開啟和關閉日誌記錄MySql
- 主鍵和外來鍵
- Mysql入門【Mysql約束】MySql
- MariaDB資料庫的外來鍵約束例項程式碼介紹詳解資料庫
- MySQL自增約束MySql
- MySQL 欄位約束MySql
- [資料庫]資料庫中為什麼不推薦使用外來鍵約束資料庫
- mysql建立外來鍵語句MySql
- 《MySQL 基礎篇》八:約束和檢視MySql
- mysql學習3:第二章:mysql安裝啟動和關閉——mysql5.6安裝MySql
- mysql學習4:第二章:mysql安裝啟動和關閉——mysql5.7安裝MySql
- Android 書本開啟和關閉動畫Android動畫