【发布时间】:2016-12-03 13:14:20
【问题描述】:
我为一家小公司管理数据层应用程序,我的软件因无法从历史上检索到零件成本信息这一事实而受到批评。例如,他们希望能够在任何时间点恢复 6 个月前的零件成本。
他们过去常常通过电子表格来做到这一点。他们每天都会将零件表复制到一个 .xlsx 文件中,然后任何时候他们想知道“嘿,去年 1 月 20 日那个零件的成本是多少?”,他们可以在 excel 中将其拉出来。
所以,我们已经开始在 SQL 中做同样的事情,到目前为止的计划是,我们将在每次更新零件成本时创建一个新表,将表命名为今天的日期,并将其保存在数据库中用于存档信息。然后,我们计划根据时间戳提取我们需要的任何表。
我不禁认为这会变得非常混乱。这是归档数据的坏方法吗?有没有我可以遵守的行业标准来尽可能少地解决这个问题?
【问题讨论】:
-
你是对的,这是一个糟糕的方法。动态命名的表使编写查询变得困难。相反,您可以简单地将 datestamp 列添加到相关表中。您可以为当前值和以前的值设置单独的表(但对于所有以前的值仍然只有一个表)。
标签: sql