Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何有效地处理主数据更新,如PTA(时间点体系结构)设计_C#_Sql_Database Design_Sql Server 2012 - Fatal编程技术网

C# 如何有效地处理主数据更新,如PTA(时间点体系结构)设计

C# 如何有效地处理主数据更新,如PTA(时间点体系结构)设计,c#,sql,database-design,sql-server-2012,C#,Sql,Database Design,Sql Server 2012,在设计时,我遇到了一个基于VB.NET的Winforms应用程序的问题 作为软件周期的第一步,我正在数据库中存储一些主数据 该主数据将用于在我的软件的“凭证”部分中进行购买和销售输入 假设用户在Purchase部分中选择了一个项目,我从数据库中检索该项目的所有信息,然后在保存时,购买凭证将与该信息一起保存 现在假设,用户更改主项目详细信息,即价格、重量 它适用于新条目。当我打开旧条目时,它将显示新的价格和重量,尽管它应该显示旧的价格和重量,因为这个条目是旧的 如何在我的应用程序中避免此设计/工作

在设计时,我遇到了一个基于VB.NET的Winforms应用程序的问题

作为软件周期的第一步,我正在数据库中存储一些主数据

该主数据将用于在我的软件的“凭证”部分中进行购买和销售输入

假设用户在Purchase部分中选择了一个项目,我从数据库中检索该项目的所有信息,然后在保存时,购买凭证将与该信息一起保存

现在假设,用户更改主项目详细信息,即价格、重量

它适用于新条目。当我打开旧条目时,它将显示新的价格和重量,尽管它应该显示旧的价格和重量,因为这个条目是旧的


如何在我的应用程序中避免此设计/工作流问题?

您应该规范化数据。不要在数据库中存储数据副本。创建实体并仅存储它们之间的关系


阅读一些关于数据库规范化的教程

您应该规范化数据。不要在数据库中存储数据副本。创建实体并仅存储它们之间的关系


阅读一些关于数据库规范化的教程

你能给我一些链接,让我了解如何管理该实体以前的数据吗?@Hemal“以前”是什么意思?您是否维护记录的历史记录?Previous表示“过去的数据”,即正在更新的数据。假设我将产品的价格从“30”更新为“35”,那么我需要在数据库中同时显示这两个价格,以便我可以显示过去账单的30和未来账单的35。你能给我一些链接,让我了解如何管理该实体以前的数据吗?@Hemal“以前”是什么意思?您是否维护记录的历史记录?Previous表示“过去的数据”,即正在更新的数据。假设我将产品的价格从“30”更新为“35”,那么我需要在数据库中同时显示这两个价格,这样我就可以为过去的账单显示30,为未来的账单显示35。