CREATE DATABASE my_db;
CREATE TABLE class (classID int NOT NULL AUTO_INCREMENT,
nameClass varchar(255),
classLeader varchar(255),
FOREIGN KEY (classLeader) REFERENCES student(studentID),
PRIMARY KEY (classID));
CREATE TABLE student (studentID int NOT NULL AUTO_INCREMENT,
lastName varchar(255),
firstName varchar(255),
classID int,
FOREIGN KEY (classID) REFERENCES class(classID),
PRIMARY KEY (studentID));
DBMSがエラーをチェックできるように外部キーを使用してテーブル間のデータの一貫性を保証しようとしています。しかし、何らかの理由でそれができないようです。エラーとは何ですか?そして代替手段はありますか?また、私は外部キーを持つテーブルを埋めると、私は外のキーのために予約されているフィールドを埋めることができません、右か?また、外部キーはキーとみなされますか?エラーコード:1215.外部キー制約(外部キー)を追加できません
CREATE DATABASE my_db3; CREATE TABLEクラス(のclassIDがNOT NULL AUTO_INCREMENTをint型、 nameClassのVARCHAR(255)、 classLeader int型、 FOREIGN KEY(classLeader)REFERENCES学生(studentID)、 PRIMARY KEY(のclassID)); TABLE学生CREATE SHOW(studentIDはint NOT NULL AUTO_INCREMENT、 氏名はvarchar(255)、 のfirstNameのVARCHAR(255)、 のclassID int型、 FOREIGN KEY(のclassID)REFERENCESクラス(のclassID)、 PRIMARY KEYを(studentID)) ; –
まだエラーが発生しています。 –
@ GEORGEReed ..あなたが手に入れているエラーを投稿することができれば便利です。 – Rohan