我有一个网站,存储客户详细信息,姓名,地址,联系方式等。客户可以通过表格更新自己的详细信息。实现这一目标的最佳做法是什么?
我只对现有数据使用UPDATE
语句,还是旧和新详细信息?
让我思考,比如当客户更新他们的详细信息时使用亚马逊等网站。如果细节不正确怎么办?亚马逊是否将旧细节作为备份记录?
如客户可以居住在999 Fake Street。如果出现问题并且由于给出了新的更新细节而无法联系到客户,该怎么办?例如,客户收到服务并避免付款。
我应该只更新客户信息,还是应该将旧数据移到另一个表中然后更新?
希望我没有问过多一个明显的问题,谢谢。
答案 0 :(得分:0)
在客户表InfoDate
或类似内容中添加字段。然后,您可以通过一个视图访问数据,该视图仅显示每个客户的记录,其中InfoDate
是该客户的最大值。
您可以保留所有数据而无需复制到另一个表进行存档的过程,并且可以通过直接查询表而不是视图来轻松访问历史数据。
答案 1 :(得分:0)
Elliott,您正在寻求的数据库设计必须基于业务规则。 facebook,twitter,amazon或Mom's Pizza的DBA没有确定要保留多少旧地址。向广管局询问地址规则。如果答案是“仅保留当前地址”,请执行您在问题中提到的 UPDATE 语句。如果BA给你一个空白的注意,然后为每次更新插入新行并显示最新的计时记录,绝不删除任何内容。
当数据库A收到一整套业务规则时,设计应该开始。