mysql 外來鍵 級聯刪除 級聯更新:Cannot delete or update a parent row: a foreign key constraint fails (`db1`.grade
報錯:Cannot delete or update a parent row: a foreign key constraint fails。
原因:表關聯生成的強制約束問題,在刪除的時候回檢查表之間的關聯關係,從而導致無法刪除,更新
解決辦法:
SET foreign_key_checks = 0; // 先設定外來鍵約束檢查關閉 //進行刪除或者更新操作 update student set StudentNumber=6 where StudentNumber=3; //級聯更新 delete from student where StudentNumber = 2;//級聯刪除 SET foreign_key_checks = 1; // 開啟外來鍵約束檢查,以保持表結構完整性
檢視foreign_key_checks的值:
show VARIABLES like "foreign%";
注意:在刪除完表之後,最好是重新開啟檢查(SET foreign_key_checks = 1) 以保持表格結構的完整性。
相關推薦
mysql 外來鍵 級聯刪除 級聯更新:Cannot delete or update a parent row: a foreign key constraint fails (`db1`.grade
報錯:Cannot delete or update a parent row: a foreign key constraint fails。 原因:表關聯生成的強制約束問題,在刪除的時候回檢查表之間的關聯關係,從而導致無法刪除,更新 解決辦法: SET foreign_key_c
MySQL外來鍵新增與刪除
ALTER table erp_bom_detail ADD CONSTRAINT `FK_bom_detail` FOREIGN KEY (`bom_id`) REFERENCES erp_bom(`bom_id`) ALTER 的是子表 alter t
mysql ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constrain fails
inno delet error parent 更新 ren update RR spl ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constrain fails。 可能
MySql資料庫插入或更新報錯:Cannot add or update a child row: a foreign key constraint fails
具體報錯資訊: Cannot add or update a child row: a foreign key constraint fails (`xxx`.`AAA`, CONSTRAINT `tb_competitionmsg_ibfk_2` FOREIGN KEY (`organizerid`) R
[MySQL]MYSQL: Cannot delete or update a parent row: a foreign key constraint fails
原文:http://www.cnblogs.com/william-lin/archive/2013/01/22/2871398.html 這可能是MySQL在InnoDB中設定了foreign key關聯,造成無法更新或刪除資料。可以通過設定FOREIGN_KEY_CH
mysql資料庫報錯 sql 1452 Cannot add or update a child row:a foreign key constraint fails
其實這句話的意思就是你新增一個值是一個外來鍵,但是這個外來鍵不在關聯的資料庫中的主鍵中,這樣就導致了新增失敗了,解決辦法就是新增對應關聯資料庫的主鍵的值,不過我要提醒一下!(也就是我採的坑!)一定要看清
MySQL外來鍵約束_ON DELETE CASCADE/ON UPDATE CASCADE(級聯刪除,刪除主表資料,附表資料也被刪除)
MySQL通過外來鍵約束實現資料庫的參照完整性,外來鍵約束條件可在建立外來鍵時指定,table的儲存引擎只能是InnoDB,因為只有這種儲存模式才支援外來鍵。 外來鍵約束條件有以下4種: (1)restrict方式:同no action,都是立即檢查外來鍵約束; - - 限制
MySQL:04---資料完整性(非空、唯一、主鍵、check、預設值、外來鍵約束),級聯設定,表自增列
一、資料完整性 1.概念:指資料能正確反映實際情況 2.分類 實體完整性:識別符號或主鍵完整性(主鍵、唯一值約束) 域完整性:限制資料型別、格式、取值範圍(檢查、預設值、外來鍵約束) 引用完整性:輸入或刪除時,不能存在引用不存在的值(外來鍵約束) 自定義完整性
【0016】MySQL外來鍵約束刪除時和更新時各取值的含義
1、準備測試工作 建立2個表,分別為studnet 學生表和monitor 班長表 學生表有學號和姓名2個屬性; 班長表有班級和學號2個屬性。 班長表設定外來鍵學號,連線主表學生表的學號屬性。 並插入資料如圖: 2、刪除時屬性,可能取值如上圖為:預設(RESTR
mysql 外來鍵foreign key相關知識及新增刪除外來鍵 sql語句
外來鍵保證資料的完整性和一致性,被參照的表是主表,外來鍵所在欄位的表是子表,依賴於資料庫中已存在的表的主鍵。外來鍵的作用是建立子表與父表的關聯關係,是約束父表和子表, 1.父表和子表儲存引擎一樣且只能為InnoDB,禁止使用臨時表, 2.外來鍵列和參照列必須具有相似的資料型別,其中數字的長度
MYSQL刪除外來鍵,無法刪除外來鍵
1. 什麼是參照完整性?——————–參照完整性(完整性約束)是資料庫設計中的一個重要概念,當資料庫中的一個表與一個或多個表進行關聯時都會涉及到參照完整性。比如下面這個例子:文章分類表 - categoriescategory_id name1 SQL Server2
MySQL外來鍵更新刪除設定cascade、set null、restrict、no action的區別
1.首先明確一個概念,假如表A(id,name,foreign_id),表B(foreign_id,name),我們說表A參考了表B的主鍵作為其外來鍵使用,所以B表示父表,A表是子表2.刪除和更新有四種設定方式(1)cascade:級聯,當父表更新、刪除,子表會同步更新和刪除
mysql中新增外來鍵約束失敗(cannot add foreign key constraint)
mysql中新增外來鍵約束遇到一下情況: cannot add foreign key constraint 出現這個問題一般是開發工作者對外來鍵的使用出現了疏忽,我們先清晰一下外來鍵的使用: 1. 外來鍵欄位不能為該表的主鍵; 2. 外來鍵欄位參考欄
MySQL(外來鍵變種)
day58 外來鍵的變種 a. 使用者表和部門表
mysql外來鍵理解
一個班級的學生個人資訊表: 什麼是外來鍵 在設計的時候,就給表1加入一個外來鍵,這個外來鍵就是表2中的學號欄位,那麼這樣表1就是主表,表2就是子表。 外來鍵用來幹什麼 為了一張表記錄的資料不要太過冗餘。 這和軟體project的模組
mysql 外來鍵 cascade
1 . cascade方式在父表上update/delete記錄時,同步update/delete掉子表的匹配記錄 2. set null方式在父表上update/delete記錄時,將子表上匹配記錄的列設為null要注意子表的外來鍵列不能為not null &n
Day055--MySQL--外來鍵的變種,表與表的關係,單表查詢,多表查詢, 內連線,左右連線,全外連線
表和表的關係 ---- 外來鍵的變種 * 一對多或多對一 多對多 一對一 如何找出兩張表之間的關係 分析步驟: #1、先站在左表的角度去找 是否左表的多條記錄可以對應右表的一條記錄,如果是,則證明左表的一個欄位foreign key 右表一個欄位(通常是id) #2、再站在右表的角度去找 是否右表
Mysql外來鍵約束之CASCADE、SET NULL、RESTRICT、NO ACTION
Mysql中有目前只有InnoDB引擎支援外來鍵約束,InnoDB中外來鍵約束定義的語法如下: ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_NAME] (index_col_name, ...
Mysql 外來鍵 FOREIGN KEY
FOREIGN KEY 外來鍵 (重點) 1. 針對從表設定外來鍵約束 2. 資料的完整性 &
MySQL無法建立外來鍵錯誤 Err 1215: Cannot add the foreign key constraint
今天在寫資料庫作業時,遇到的無法建立外來鍵問題 create table department (dept_name varchar(20), building varchar(15),