2016-11-27 144 views
0

我面临更新表的问题。我有两个表:SQL更新表。一个包含外键

  • Visit:visitId,roomId(FK)
  • Room:roomId,价格

如何更新的房间价格为特定roomId,但保持价格的旧价值Visit

例如,某人在酒店预订了50美元的房间,但在他做完之后,价格变为60美元。所以我想为这个客户保留旧的价格(50美元),新的价格(60美元)。

感谢响应

+0

在visitit表中订购时,您必须保存房间的价格。 –

回答

2

你有一个缓慢变化的维度。最好的方法可能是将价格也保留在visit表中。您可以将此称为reservationPrice或类似的东西,以区别于当前房间的价格。

+0

谢谢你的回答。是的,这是一种解决方案,但在将数据从其他表中保存到另一个表时使用外键是否有意义?做这样的事情是否正确? – user7215538

+0

@ user7215538。 。 。这是一种方法。另一种方法是实施缓慢变化的维度,其中有效和结束日期提供价格。 –