繁体   English   中英

foreach行插入到另一个表并更新列

[英]foreach row insert to another table and update column

情况:具有命名表Table2Id Table1 Table2 CONSTRAINT FOREIGN KEY Table1 Table2Id

如何用来自Table2新插入的行更新Table1每一行的Table2Id列(每个Table1行将具有自己的Table2记录)?

我已使用以下代码在MS SQL Server上执行此操作。 我没有方便的代码,但是在MySQL中实现了类似的触发器。

ALTER TRIGGER [dbo].[Addresses_afterInsert] 
   ON  [dbo].[Addresses] 
   AFTER INSERT
AS 
BEGIN
  INSERT INTO [MultiKey] ([keyEntity], [nameEntity], [typeEntity])
  SELECT [keyAddress], [fullAddress], 'Address' AS [typeEntity]
  FROM [Addresses]
  WHERE ([keyMulti] IS NULL);
  UPDATE [Addresses]
  SET [keyMulti] = [MultiKey].[keyMulti]
  FROM [Addresses]
  INNER JOIN [MultiKey]
    ON (
      ([MultiKey].[keyEntity] = [Addresses].[keyAddress])
      AND ([MultiKey].[typeEntity] = 'Address')
    );
END

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM