【问题标题】:Synchronizing two joined table同步两个连接表
【发布时间】:2013-09-16 10:44:46
【问题描述】:

我有以下要求:

  1. Table Client 有两列 ClientID(Int) 和 Email ID(Varchar 100)。 ClientID 是一个标识列,其自动增量值为 1。

  2. Table Indicator 有两列 ClientID(Int) 和 Paid(Char 1)

两个表都使用 Key clientID 连接。

我正在使用 MS SQL 2008 数据库。能否请您告诉我如何在客户端中创建新记录后立即使用 clientID 自动更新指标表。

感谢您的帮助。

【问题讨论】:

  • 你可以使用触发器来做到这一点。
  • 你能提供一个伪代码来解决这个问题吗?
  • 还是只使用最后插入的 id?您使用的是 ORM 还是普通 SQL?

标签: sql-server


【解决方案1】:

您可以使用触发器来实现,也可以对数据结构进行非规范化(如果Indicator 中只有Paid,我认为PaidClient 的简单属性)并将其移动到@987654325 @。

你可以像这样使用触发器:

CREATE TRIGGER dbo.TrigerName
ON Client AFTER INSERT
AS
BEGIN
    UPDATE I
    SET Paid = <your value>
    FROM Indicator I
       JOIN inserted ins
           ON I.ClientID = ins.ClientId
END

【讨论】:

  • 感谢先生的及时回复。
猜你喜欢
  • 2018-10-31
  • 1970-01-01
  • 2023-04-09
  • 1970-01-01
  • 2019-09-22
  • 2020-09-15
  • 1970-01-01
  • 2015-09-18
  • 1970-01-01
相关资源
最近更新 更多