外部キー制約エラー: エラー コード 1215
テーブルに外部キー制約を追加しようとすると、エラー コード 1215、"外部キー制約(外部キー)を追加できません」というエラーが発生する場合があります。このエラーは、参照される列と外部キー列の間のデータ型の不一致を示します。
エラー分析:
この例では、エラーはおそらく次の外部キー制約:
FOREIGN KEY (classLeader) REFERENCES student(studentID)
ここで、classLeader 列のデータ型は VARCHAR(255) ですが、参照される Student テーブルの StudentID 列のデータ型は INT です。参照される列と外部キーの列のデータ型は一致する必要があります。
代替解決策:
このエラーを解決するには、参照される列と外部キーの列のデータ型が一致していることを確認してください。マッチ。この場合、classLeader 列を、studentID 列と一致する INT のデータ型を持つように変更できます。
外部キーによるテーブルの入力:
外部キー制約のあるテーブルでは、外部キー フィールドにデータを直接挿入できません。代わりに、最初にデータを参照先のテーブル (たとえば、student テーブル) に挿入する必要があります。その後、外部キー フィールド (classID など) に、参照されるテーブルからの対応する主キー値を入力できます。
キーとしての外部キー:
外部キーは次のとおりです。キーの一種、特に論理キーとみなされます。これらは主キーや一意キーではありませんが、テーブル間の関係を維持することでデータの整合性を確保する上で重要な役割を果たします。外部キーは参照整合性を強制し、子テーブル (クラスなど) のレコードが親テーブル (学生など) の対応するレコードを持つことを保証することで、データの不一致を防ぎます。
以上が外部キー制約エラー (エラー コード 1215) が発生するのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。