Witam,
Chcę stworzyć trigger, który w momencie edytowania wartości w kolumnie OPIS_NAPRAWY zmieni wartość w danym wierszu w kolumnie SERWISANT na =CURRENT_USER.
Poniżej przesyłam wstępnie napisany kod, który niestety nie działa prawidłowo.
Proszę o pomoc.
use SERWIS
go
CREATE TRIGGER serwisant_trigger
ON naprawa
AFTER update
as
if UPDATE (OPIS_NAPRAWY)
--referencing new as new old as old for each row
declare
@IDNAPRAWA int,
@OPIS_NAPRAWY_OLD char (40),
@OPIS_NAPRAWY_NEW char (40)
-- sekcja declare
IF UPDATE (OPIS_NAPRAWY)
begin
SELECT
@IDNAPRAWA = IDNAPRAWA,
@OPIS_NAPRAWY_OLD=OPIS_NAPRAWY
FROM DELETED
SELECT @OPIS_NAPRAWY_NEW=OPIS_NAPRAWY
FROM INSERTED
if @OPIS_NAPRAWY_OLD != @OPIS_NAPRAWY_NEW
-- ZMIANA SERWISANTA
UPDATE NAPRAWA
SET SERWISANT=CURRENT_USER
WHERE IDNAPRAWA = @IDNAPRAWA
end