Python和SQL—按顺序管理不断变化的客户数据的最佳实践?
目前,我经常使用Python和SQL进行练习,目前我正在尝试使用保存在SQL数据库中的数据创建订单工作流,以供测试 例如,目前我的客户表如下所示:Python和SQL—按顺序管理不断变化的客户数据的最佳实践?,python,sql,python-3.x,database,database-design,Python,Sql,Python 3.x,Database,Database Design,目前,我经常使用Python和SQL进行练习,目前我正在尝试使用保存在SQL数据库中的数据创建订单工作流,以供测试 例如,目前我的客户表如下所示: CustomerSK CustomerID VersionID FirstName LastName Address DateEffective DateExpired IsCurrent ---------- ---------- --------- --------- -------- ------- ------------- -----
CustomerSK CustomerID VersionID FirstName LastName Address DateEffective DateExpired IsCurrent
---------- ---------- --------- --------- -------- ------- ------------- ------------ ---------
42942 123 1 Robert Smith 10001 2018-12-07 2019-12-22 0
42943 123 2 Robert Johnson 10002 2019-12-23 NULL 1
因此,我试图跟踪客户的历史数据,因为如果客户的数据发生变化,我不希望旧订单受到影响
到目前为止效果不错,但我有几个问题:
第二-->插入新记录,开始日期=当前日期,版本=最大(版本)+1首先感谢您的回答!1.所以我的订单表也需要列来保存customer、CustomerID和CustomerVersion,这是对的?2.但是Customer和Address是两个不同的表,所以它们都需要ID_标志,对吗?在订单表中只需要CustomerSK字段。为了获取客户信息,您将加入此字段并获取所有信息。如果这是两个不同的表,则不需要标记。从表中选择数据时,只需输入字符串(CU/AD)好的,明白了。我想现在还有最后一个问题:在查询阶段,我希望始终为客户提供最新的条目,等等,之后,如果订单阶段完成,我希望冻结该数据。因此,你会做一个不同的“订单表”,在那里你移动查询数据来“冻结”它们?