hej,
jag håller på och skriver en trigger till en tabell, får dock en problem här.
när jag test kör det här triggern, så aktiveras triggern alltid oavsett om raden finns eller inte finns i tabellen.
enligt en person jag har frågat ska det tydligen vara att när triggern körs så läggs det nya raden från Inserted in till tabellen.
om det är, vad ska man skriva till för nåt som säger att jag inte vill att raden från Inserted läggs in tabellen?
här är min trigger också
-----------------------------------------------------
CREATE TRIGGER ej_dubbel_bokad_lokal
ON BokningsSchema
FOR INSERT AS
DECLARE @LokalKod CHAR(2)
DECLARE @Vecka TINYINT
DECLARE @Dag VARCHAR(2)
DECLARE @Tid VARCHAR(5)
DECLARE @Svar_LokalKod CHAR(2)
DECLARE @Svar_Vecka TINYINT
DECLARE @Svar_Dag VARCHAR(2)
DECLARE @Svar_Tid VARCHAR(5)
SELECT @LokalKod = LokalKod, @Vecka = Vecka, @Dag = Dag, @Tid = Tid
FROM inserted
SELECT @Svar_LokalKod = LokalKod, @Svar_Vecka = Vecka, @Svar_Dag = Dag, @Svar_Tid = Tid
FROM bokningsschema
WHERE lokalkod = @lokalkod AND vecka = @vecka AND dag = @dag AND tid = @tid
IF @svar_lokalkod = @lokalkod AND @svar_vecka = @vecka AND @svar_dag = @dag AND @svar_tid = @tid
BEGIN
RAISERROR ('Upptagen', 16,1 )
ROLLBACK TRANSACTION
END