Advertisement
Guest User

Untitled

a guest
Nov 1st, 2014
133
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.61 KB | None | 0 0
  1. CREATE TRIGGER multipurposeCourseEnrollment
  2. ON courseEnrollment AFTER INSERT, DELETE, UPDATE AS
  3. BEGIN
  4. IF EXISTS(SELECT courseID FROM DELETED) AND EXISTS(SELECT courseID FROM INSERTED)
  5. THEN
  6. DECLARE @oldCourseID INT
  7. DECLARE @newCourseID INT
  8. SELECT @oldCourseID = (SELECT courseID FROM DELETED)
  9. SELECT @newCourseID = (SELECT courseID FROM INSERTED)
  10. BEGIN
  11. UPDATE courses SET courseOpenSeats = (courseOpenSeats +1)
  12. WHERE courseID = @oldCourseID
  13. UPDATE courses SET courseOpenSeats = (courseOpenSeats -1)
  14. WHERE courseID = @newCourseID AND courseOpenSeats>0
  15. END
  16. ELSE
  17. IF EXISTS(SELECT courseID FROM DELETED)
  18. THEN
  19. DECLARE @courseIDDel INT
  20. SELECT @courseIDDel = (SELECT courseID FROM DELETED)
  21. BEGIN
  22. UPDATE courses SET courseOpenSeats = (courseOpenSeats +1)
  23. WHERE courseID = @courseIDDel
  24. END
  25. ELSE
  26. IF EXISTS(SELECT courseID FROM UPDATED)
  27. THEN
  28. DECLARE @courseID INT
  29. SELECT @courseID = (SELECT courseID FROM UPDATED)
  30. BEGIN
  31.  
  32.  
  33. UPDATE courses SET courseOpenSeats = (courseOpenSeats - 1)
  34. WHERE courseID = @courseID AND courseOpenSeats>0
  35. END
  36. ELSE
  37. END)
  38. END;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement