1
MySQL의 외래 키 제약 조건을 추가 할 수 없습니다 :는 MySQL의에서
- 이노 엔진
school
표에 설정되어 - 참조 된 :
이CREATE SCHEMA IF NOT EXISTS otes_db; USE otes_db; CREATE TABLE IF NOT EXISTS school( school_code CHAR(3), school_desc VARCHAR(255) NOT NULL, school_head INT UNSIGNED NOT NULL, PRIMARY KEY(school_code), FOREIGN KEY(school_head) REFERENCES user(user_id) ON DELETE CASCADE ON UPDATE CASCADE )ENGINE=INNODB; CREATE TABLE IF NOT EXISTS user( user_id INT UNSIGNED, user_lname VARCHAR(255) NOT NULL, user_fname VARCHAR(255) NOT NULL, user_mname VARCHAR(255), user_email VARCHAR(255) UNIQUE NOT NULL, user_password VARCHAR(255) NOT NULL, user_type ENUM('CEO', 'VP', 'HEAD', 'CHAIR', 'STUD') NOT NULL, user_isActivated ENUM('Y', 'N') DEFAULT 'N', PRIMARY KEY(user_id) );
이 this thread을 바탕으로, 나는 다음을 점검 한 키가 기본 키입니다 (
user_id
) - 데이터 유형이 동일합니다 (
INT UNSIGNED
)
그러나, 나는 여전히 school_head
및 user_id
와 오류를 받고 있어요. 내가 놓친 것 없니?
'학교'테이블을 만들기 전에 'user' * 테이블을 만들어야합니다. 더하기'user'는 예약어입니다. 따옴표를 써야합니다. (예약어가 아닌 다른 이름을 찾아보십시오.) –
답변을 작성해 주시면 upvote하고 동의하겠습니다. 'user'에 대한 팁을 주셔서 감사합니다 (그래서 항상 강조 표시됩니다). – silver