Guest User

Untitled

a guest
May 24th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.94 KB | None | 0 0
  1. CREATE TRIGGER nie_obnizaj_pensji
  2. ON pracownik
  3. FOR UPDATE
  4. AS
  5. BEGIN
  6.  
  7. DECLARE kursor_deleted CURSOR
  8. FOR
  9. SELECT pensja FROM deleted;
  10.  
  11. DECLARE kursor_inserted CURSOR
  12. FOR
  13. SELECT nr_pracownika,pensja FROM inserted;
  14.  
  15. OPEN kursor_deleted
  16. OPEN kursor_inserted
  17.  
  18. DECLARE @pensja_inserted decimal(8,2)
  19. DECLARE @pensja_deleted decimal(8,2)
  20. DECLARE @nr_pracownika char(4);
  21.  
  22. FETCH NEXT FROM kursor_deleted INTO @pensja_deleted
  23. FETCH NEXT FROM kursor_inserted INTO @nr_pracownika, @pensja_inserted
  24.  
  25. WHILE @@FETCH_STATUS = 0
  26. BEGIN
  27. SET NOCOUNT ON
  28. IF @pensja_inserted < @pensja_deleted
  29. BEGIN
  30. print 'Blad nie mozna obnizyc pensji pracownikowi'
  31. UPDATE pracownik SET pensja=@pensja_deleted
  32. WHERE nr_pracownika = @nr_pracownika;
  33. END
  34. FETCH NEXT FROM kursor_deleted INTO @pensja_deleted
  35. FETCH NEXT FROM kursor_inserted INTO @nr_pracownika, @pensja_inserted
  36. END
  37.  
  38. CLOSE kursor_deleted
  39. CLOSE kursor_inserted
  40. DEALLOCATE kursor_deleted
  41. DEALLOCATE kursor_inserted
  42. END
Add Comment
Please, Sign In to add comment