如何使用表中的主键属性将值插入sql中的多值属性?

时间:2018-05-16 04:46:31

标签: mysql sql

我创建了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 属性的情况下制作主键?

2 个答案:

答案 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)
);