试图弄清楚为什么这个约束没有按预期工作并试图找到解决方案。
以下表格和属性的说明:
Table Hotel
hotel_id - primary key - INT(5)
Table Room
room_id - primary key - INT(5)
hotel_id - primary key - INT(5)
room_type - VARCHAR(25)
Table RoomType
room_type - primary key - VARCHAR(25)
hotel_id - primary key - INT(5)
type_description - VARCHAR(100)
price - INT(5)
所以这些建议者:
room.room_type references roomtype.room_type
room.hotel_id references hotel.hotel_id
roomtype.hotel_id references hotel.hotel_id
因此,期望的结果是,所有酒店都将拥有独特的房型。然后酒店还将拥有与房型相关的房间。因此,这些示例数据将是:
Hotel:
hotel_id
1
2
Room:
room_id hotel_id room_type
1 1 Single
2 2 Double
RoomType:
room_type hotel_id type_description price
Single 1 Random 500
Double 2 Random 500
因此,如果我尝试将此行添加到Rooms中,我希望它不会因为约束而无效。至于hotel_id 1,房间类型表中没有房型Double。这仍然有效,并且不会被约束阻止。
Room
room_id hotel_id room_type
3 1 Double
那你怎么做呢?