0

Utilisation de SQL2005/2008. Disons que j'ai une table Hotel (HotelID, HotelName) et une table Room (RoomID, HotelID, RoomName) Hôtel -> Room 1: M par HotelID RoomID est PK inside Room Maintenant j'ai une table Contract (ContractID, HotelID, ContractDescription) et ContractRate (ContractRateID, ContractID, RoomID, Rate) Tous les primaires et les clés étrangères définies, mais ¿Quelle est la meilleure façon de relier RoomID dans ContractRate avec Room, en tenant compte du fait que RoomID peut seulement par les valeurs associées à HotelID dans la chambre? Actuellement, j'ai un FK sur ContractRate.RoomID -> Room.RoomID mais cela nécessite le filtre supplémentaire de Room.HotelID étant ContractRate -> Contract.HotelID, que je peux appliquer à l'application mais je voudrais savoir si on peut le définir/à la base de données appliquées (ou si je dois redéfinir le DB) Meilleur Regads, JuanroClé étrangère sur une table enfant dépendante du champ parent

Répondre

1

Je pense que vous devez mettre RoomID à la fois contractuelle et une table ContractRate pour normilization. mais dans le scénario actuel, personne ne faisant la Normalisation, alors mettez à la fois hotelID et RoomID dans les deux tables selon ma suggestion.