MAC Sierra 10.12.2 mariaDB Vers 10.1.19 구문 분석 문은 쿼리 테이블 구문 창에서 잘라내어 붙여 넣기됩니다.mariaDB foreign key unformed - varchar가 서명/서명되지 않은 문제가 아닙니다.
첫 번째 테이블 :
CREATE TABLE `USAStates` (
`state_id` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT,
`state_abbrev` varchar(6) NOT NULL DEFAULT '',
`electoral_votes` smallint(2) DEFAULT '0',
`fed_reg` smallint(2) DEFAULT '0',
`econ_anal_reg` varchar(128) DEFAULT NULL,
`FRB_district` varchar(128) DEFAULT NULL,
PRIMARY KEY (`state_id`,`state_abbrev`)
) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
두 번째 테이블 : 명령 창에서 ALTER 문
CREATE TABLE `FRBCommentary` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`state_abbrev` varchar(6) NOT NULL DEFAULT '',
`FRB_district_rem` longtext,
PRIMARY KEY (`id`,`state_abbrev`)
) ENGINE=InnoDB AUTO_INCREMENT=52 DEFAULT CHARSET=utf8;
결과; Querious 도구를 사용하여 동일한 결과 :
MariaDB [ESHOP]>
ALTER TABLE FRBCommentary
ADD CONSTRAINT FOREIGN KEY (state_abbrev)
REFERENCES USAStates (state_abbrev);
ERROR 1005 (HY000)는 : 테이블
eshop
를 만들 수 없습니다.#sql-74b_41
(errno를 : 150 "외래 키 제약 조건이 잘못 형성된다") MariaDB [이숍]> MS 액세스에 매우 유능 할 ... 년 후 진짜 배우려고 노력하고 사용
.
'id'를 없애고'state_abbrev'를'PRIMARY KEY'로 만드십시오. –