다른 두 테이블의 기본 키를 참조하는 두 개의 외래 키를 사용하여 MySQL에서 테이블을 만들려고하는데 errno : 150 오류가 발생하고 테이블이 생성되지 않습니다.
다음은 세 테이블 모두에 대한 SQL입니다.
CREATE TABLE role_groups (
`role_group_id` int(11) NOT NULL `AUTO_INCREMENT`,
`name` varchar(20),
`description` varchar(200),
PRIMARY KEY (`role_group_id`)
) ENGINE=InnoDB;
CREATE TABLE IF NOT EXISTS `roles` (
`role_id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50),
`description` varchar(200),
PRIMARY KEY (`role_id`)
) ENGINE=InnoDB;
create table role_map (
`role_map_id` int not null `auto_increment`,
`role_id` int not null,
`role_group_id` int not null,
primary key(`role_map_id`),
foreign key(`role_id`) references roles(`role_id`),
foreign key(`role_group_id`) references role_groups(`role_group_id`)
) engine=InnoDB;
어떤 도움이라도 대단히 감사하겠습니다.
auto_increment
무엇입니까? 그것은 유효하지 않습니다. Auto_increment는 식별자가 아니라 키워드입니다.