Advertisement
Guest User

Untitled

a guest
Apr 3rd, 2019
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
T-SQL 0.90 KB | None | 0 0
  1. 2.4 a)
  2. CREATE TRIGGER ExamInsert_after_ins
  3.     ON Exam
  4.     AFTER INSERT
  5. AS
  6. BEGIN
  7.  
  8.     DECLARE @size INT
  9.     SELECT @size = count(*) FROM inserted
  10.  
  11.     if @size = 1
  12.     BEGIN
  13.  
  14.         DECLARE @group VARCHAR(20), @count_stud INTEGER, @subject VARCHAR(255)
  15.         SELECT @group = NameGroup FROM Student WHERE Id_Student in (SELECT Id_Student FROM inserted)
  16.         SELECT @subject = Subject FROM inserted
  17.  
  18.         SELECT @count_stud = count(*) FROM Exam AS e WHERE e.Id_Student
  19.             in (SELECT Id_Student FROM Student WHERE NameGroup = @group) AND Subject = @subject
  20.  
  21.         DECLARE @cortage_count INT
  22.         SELECT @cortage_count = count(*) FROM Exam_Group AS e WHERE e.Subject = @subject
  23.  
  24.         IF @cortage_count = 0
  25.             INSERT INTO Exam_Group VALUES(@group, @subject, @count_stud)
  26.         ELSE
  27.             UPDATE Exam_Group SET Count = @count_stud WHERE Subject = @subject AND NameGroup = @group
  28.  
  29.  
  30.     END
  31.     ELSE BEGIN
  32.         PRINT 'ошибка'
  33.         ROLLBACK TRAN
  34.     END
  35. END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement