ので、既存のテーブル#1452-ことができます追加または子の行は更新されませ:外部キー制約が失敗した( `testdatabase`.`#をSQL-1
ALTER TABLE retailer_commission ADD FOREIGN KEY (Retailer_Id) REFERENCES retailer(Id)
ので、既存のテーブル#1452-ことができます追加または子の行は更新されませ:外部キー制約が失敗した( `testdatabase`.`#をSQL-1
ALTER TABLE retailer_commission ADD FOREIGN KEY (Retailer_Id) REFERENCES retailer(Id)
に外部キーを追加する方法retailer
テーブル内retailer_commission
テーブル内のRetailer_id
列とId
列のタイプと同じタイプ(int(11)
)の両方があり、あなたのエラーのために別の説明がなければならない。
一つの可能性の高い電子説明すると、retailer_commission
テーブルには、Retailer_id
の値を持つレコードがあり、これは存在しないretailer
のレコードを参照しています。
次のクエリはあなたに非空のセットを与えた場合、レコードが返された問題ととして考慮されるべきである。
SELECT rc.*
FROM retailer_commission rc LEFT JOIN retailer r
ON rc.Retailer_id = r.Id
WHERE r.Id IS NULL
私はこのクエリを使用しています"#1452 - 子行を追加または更新できません:外部キー制約が失敗しました(' testdatabase'.'#sql-15c0_dc'、CONSTRAINT " – dev1
問題は外部キーテーブルでは、解決されたとの理由で、レコードがたくさんありますこのエラーが発生しましたが、このテーブル(外部テーブル)を切り捨てて「ALTER TABLE retailer_commission ADE FOREIGN KEY(Retailer_Id)REFERENCES retailer(Id)」というクエリを実行しました。
私の答えはおそらく何が起こったのかの理由。 –
両方の表(親/クライアント)のスキーマを表示しています...両方の列のスキーマ/データ型/プロパティが同じではないようです.... –
両方の表スキーマは同じです(データ型はint(11)) – dev1
両方のテーブルの "show create table mytable"の出力。 –