1
MySQL 5.1.41과 함께 MySQL Workbench 5.2.33 사용MySQL 워크 벤치의 정방향 엔지니어링 EER 다이어그램
나는 EER 다이어그램을 만들었습니다. 그러나 MySQL Workbench에서 엔지니어를 전달하려고하면 다음 오류가 발생합니다.
Executing SQL script in server
ERROR: Error 1005: Can't create table 'test_db.test_table' (errno: 150)
-- -------------------------------------------------------
Table `test_db`.`test_table`
-- -------------------------------------------------------
CREATE TABLE IF NOT EXISTS `test_db`.`test_table` (
`id` BIGINT UNSIGNED NOT NULL AUTO_INCREMENT ,
`figure` TINYINT UNSIGNED NULL ,
`users_id` BIGINT UNSIGNED NOT NULL ,
`inactive` TINYINT(1) NULL ,
`type_id` TINYINT NOT NULL ,
PRIMARY KEY (`id`, `users_id`, `type_id`) ,
UNIQUE INDEX `id_UNIQUE` (`id` ASC) ,
INDEX `fk_figure_users1` (`users_id` ASC) ,
INDEX `fk_figure_type1` (`figure_type_id` ASC) ,
CONSTRAINT `fk_figure_users1`
FOREIGN KEY (`users_id`)
REFERENCES `test_db`.`users` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_figure_type1`
FOREIGN KEY (`type_id`)
REFERENCES `test_db`.`type` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
SQL script execution finished: statements: 9 succeeded, 1 failed
왜이 오류가 발생합니까? 당신은 혼자가 아니입니다
감사합니다. 그 중 하나는 원래 서명되지 않은 ID로 설정되어 있었고 다른 ID를 사용하여 다른 테이블에 연결하면 서명 된 것으로 설정되었습니다. 그것을 고쳐서 멋지게 설계했습니다! – oshirowanen