用于预订数据库的ER图

时间:2015-06-22 21:39:09

标签: database database-design

我正在创建一个预订公寓应用程序的数据库。 我有一个问题 - 允许用户的passwords在DB中(例如使用BCrytp)是允许的吗? 另一个问题 - 如果在几个月内可能发生变化,保留price的最佳方式是哪里? ER diagram

2 个答案:

答案 0 :(得分:1)

通常,您会将密码存储为某种加密哈希值。最好是单向,因此无法解密。进行身份验证时,检查是否可以从提供的密码生成相同的哈希值;不是decypt存储的内容。您的哈希值也应该是" salted"使用其他一些数据,因此具有相同密码的两个用户不具有相同的哈希值(因此,使用用户名本身很受欢迎)。

如果您的价格有所不同,您需要一个单独的表格,其中包含日期和日期到字段的价格,以便您知道价格有效的时间段。除非,你说每个"预订"可以有价格 - 然后你可以把价格放在预订表中。

答案 1 :(得分:1)

是的,您可以使用Bcyrpt(特别是py-bcrypt)来加密密码并存储到数据库中。 Bcrypt哈希是安全的,并且它在许多应用程序中使用。

此外,如果您的公寓价格在几个月或几个月后发生变化,那么您可以在公寓桌上再添加一个colmun(例如Last_updated)。当您第一次输入表格的价格时,这将附加当前日期。现在创建一个触发器,当公寓的价格发生变化时,该触发器将更改Last_Updated日期。这将告诉您上次更新公寓价格的最后时间(日期)。

此外,您还可以创建一个表来跟踪您的价格变化。该表将具有(apartment_id,old_price,new_price,last_updated)。使用此功能,您可以跟踪上次更新日期和旧价格。