我创建了2个表,如下所示
create table Room(
roomID varchar(5),
roomName varchar(20),
price float,
size varchar(10),
beds varchar(15),
numOfRooms int,
numOfGuests int,
constraint pk_room primary key(roomID)
);
create table Additional_room_info(
roomId varchar(5),
features varchar(20),
constraint fk_room_add_ftrs foreign key(roomID) references Room(roomID)
);
我想在 Additional_room_info 中将 roomId 作为表格的主键。我知道在这种情况下是不可能的,因为同一个 roomId 会多次重复添加到表中。是否还有其他方法可以在不包含 features 属性的情况下制作主键?
答案 0 :(得分:3)
create table Additional_room_info(
roomInfoId BIGINT AUTO_INCREMENT PRIMARY KEY,
roomId varchar(5),
features varchar(20),
constraint fk_room_add_ftrs foreign key(roomID) references Room(roomID)
);
答案 1 :(得分:0)
使用自动增量将 ID 添加到Additional_room_info
主键,这样您就不必担心了。< / p>
create table Additional_room_info(
id INT PRIMARY KEY NOT NULL AUTO_INCREMENT,
roomId varchar(5),
features varchar(20),
constraint fk_room_add_ftrs foreign key(roomID) references Room(roomID)
);