Advertisement
Guest User

Untitled

a guest
Oct 21st, 2017
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
SQL 0.81 KB | None | 0 0
  1. CREATE TRIGGER tr_check_req
  2. AFTER INSERT ON HW3.SCHEDULE
  3. REFERENCING NEW AS nROW
  4. FOR EACH ROW MODE DB2SQL
  5. BEGIN
  6. DECLARE preReqFound BOOLEAN DEFAULT FALSE;
  7. FOR v1 AS
  8.       c1 CURSOR FOR
  9.    SELECT * FROM HW3.CLASSREQ WHERE ClassId = nROW.ClassId
  10.    DO
  11.       IF( EXISTS(
  12.         SELECT 1 FROM HW3.SCHEDULE WHERE StudentId = nROW.StudentId AND ClassId = PrereqId AND ( YEAR != nRow.YEAR AND Semester != nRow.Semester) AND Coreq = 'F')
  13.       )
  14.       THEN SET preReqFound = TRUE ;
  15.       END IF;
  16.  
  17.       IF( EXISTS(
  18.         SELECT 1 FROM HW3.SCHEDULE WHERE StudentId = nROW.StudentId AND ClassId = PrereqId AND Coreq = 'T')
  19.       )
  20.       THEN SET preReqFound = TRUE ;
  21.       END IF;
  22.   END FOR;
  23.   IF preReqFound = TRUE
  24.   THEN SIGNAL SQLSTATE '88888' ('Student does not have prerequisite OR co-requisite');
  25.  
  26. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement