C# 当我们更新任何表时,如何更新多个数据库?

C# 当我们更新任何表时,如何更新多个数据库?,c#,.net-3.5,C#,.net 3.5,我正在创建一个基于医疗库存的C#Windows应用程序。在这个应用程序中,我主要有三个表单,即PurchaseDetail、SalesDetail和StockDetail 现在我想要一个功能,如果我在PurchaseDetail或SalesDetail中插入或修改记录,StockDetail中的数据也应该修改。(例如,如果我在PurchaseDetail中插入一些药物,那么StockDetail中的数量也应该修改,与SalesDetail相同) PurchaseDetail中的列: Id(主键和

我正在创建一个基于医疗库存的C#Windows应用程序。在这个应用程序中,我主要有三个表单,即PurchaseDetail、SalesDetail和StockDetail

现在我想要一个功能,如果我在PurchaseDetail或SalesDetail中插入或修改记录,StockDetail中的数据也应该修改。(例如,如果我在PurchaseDetail中插入一些药物,那么StockDetail中的数量也应该修改,与SalesDetail相同)

PurchaseDetail中的列: Id(主键和自动递增整数)、批次号、药品名称、制造日期、过期日期、费率、MRP、税、折扣、数量

SalesDetail中的列: Id(PrimaryKey和自动递增整数)、BillNumber、CustomerName、BatchNumber、Quantity、Rate、SalesDate

StockDetail中的列: Id(主键和自动增量int)、ProductId、ProductName、OpeningStock、ClosingStock、PurchaseQty、DispenceQty、PurchaseReturn、DispenseReturn


请帮帮我。

我猜您在谈论一个数据库中的3个表(尽管标题似乎另有说明)

你可以用它来实现你的要求。(注意,我在链接中给了您一个tsql示例)

或者


您可以编写一个事务过程来同时执行所有步骤(或不执行任何步骤)。

我猜您指的是一个数据库中的3个表(尽管标题似乎另有指示)

你可以用它来实现你的要求。(注意,我在链接中给了您一个tsql示例)

或者


您可以编写一个事务过程来同时执行所有步骤(或不执行任何步骤)。

我假设您的意思是“更新多个表”,而不是多个数据库

至少有3种方法可以做到这一点

  • PurchaseDetail和SalesDetail上的数据库触发器也会更新StockDetail
  • 使用存储过程将插入内容包装到PurchaseDetail或SalesDetail中,存储过程也会相应地更新StockDetail
  • 从代码(在您的C#层中)执行此操作,类似于2

  • 我假设您的意思是“更新多个表”,而不是多个数据库

    至少有3种方法可以做到这一点

  • PurchaseDetail和SalesDetail上的数据库触发器也会更新StockDetail
  • 使用存储过程将插入内容包装到PurchaseDetail或SalesDetail中,存储过程也会相应地更新StockDetail
  • 从代码(在您的C#层中)执行此操作,类似于2

  • 你的意思是更新多个表而不是数据库?那么在什么时候“多个数据库”会参与进来?你的意思是更新多个表而不是数据库?那么在什么时候“多个数据库”会参与进来?我要指出的是,将业务逻辑放在触发器中可能会导致一些丢失。如果它出现在代码中,那么任何更改都是显而易见的。我要指出的是,将业务逻辑放入触发器可能会导致丢失一点。如果它在代码中,那么任何更改都是显而易见的。