0
情況:Table1
與CONSTRAINT FOREIGN KEY
到Table2
命名爲Table2Id
的foreach行插入到另一個表和更新列
如何Table1
與新插入的行從Table2
(每個Table1
行更新Table2Id
列的每一行都會有自己Table2
記錄)?
情況:Table1
與CONSTRAINT FOREIGN KEY
到Table2
命名爲Table2Id
的foreach行插入到另一個表和更新列
如何Table1
與新插入的行從Table2
(每個Table1
行更新Table2Id
列的每一行都會有自己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
只要rowid存在於Table2中,簡單的更新語句應該適用於Table1。在從Table2獲取新插入的rowID時遇到問題嗎? – SoulTrain 2015-02-11 16:47:18
它應該爲'Table1'中的每行插入數據到'Table2',並且同時將'INSERTED.Id'分配給'Table1'中的相應列 – eCorke 2015-02-11 16:55:43