Du kan ikke behandle en trigger, som om den håndterer en række ad gangen. Hvis indsættelsen sker ved hjælp af en klausul med flere værdier eller et indlejret udvalg, udløses triggeren én gang for hele operationen, hvilket betyder, at du kun vil håndtere ét vilkårligt @BrugerID.
Her går jeg ud fra, at din PlaneGPSCordinates-tabel har præcis 5 rækker, og at det er de koordinater, som hver ny bruger får.
CREATE TRIGGER dbo.Matching
ON dbo.UserInfo
FOR INSERT
AS
BEGIN
SET NOCOUNT ON;
INSERT dbo.MatchingInformation(GPS1, GPS2, UserID)
SELECT p.GPS1, p.GPS2, i.UserID
FROM dbo.PlaneGPSCoordinates AS p
CROSS JOIN inserted AS i;
END
GO
Men dette rejser spørgsmålet, hvorfor kopiere de samme koordinater for hver bruger? Er det noget, de vil opdatere ofte, vil du bare have nogle standardværdier der til at starte med?