0
SQL Server 2008で同じDBに2つのテーブルがあります。最初に行を挿入すると、2番目のフィールドにコピーするフィールドが必要になります。私はそれをやっているトリガーを作ったが、問題は、2行を非常に高速に追加するときに、それらのうちの1つだけをコピーすることがあることである。挿入後SQL Server挿入行すべての行をコピーしません
私のコードで何が問題になっていますか?
USE [DB_NAME]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER TRIGGER [dbo].[triggerName]
ON [dbo].[table1]
AFTER INSERT
AS
BEGIN
SET NOCOUNT ON;
INSERT INTO dbo.table2(L_UID, L_Mode, C_Name, C_Logon)
SELECT ins.L_UID, ins.L_Mode, ins.C_Name, temp.C_Remark AS Logon FROM INSERTED AS ins
INNER JOIN dbo.tEmploye AS temp
ON (temp.L_UID = ins.L_UID)
WHERE temp.C_Remark IS NOT NULL
END
私は常に同じ2行のデータでテストしました。私はそれをゆっくりとするとうまくいきます。速くすると、最初のテーブルに2つのエントリがあり、2番目に1つのエントリがあります。そのため、私はINNER JOINが一致していて、C_Logonがnullではないことを知っています。私はこれをカードリーダーでテストしており、そこには2人のユーザーしかいません。 – Michal