CREATE TRIGGER должен быть первым выражением в партии
У меня есть триггер ниже:
CREATE Trigger enroll_limit on Enrollments
Instead of Insert
As
Declare @Count int
Declare @Capacity int
Select @Count = COUNT(*) From Enrollments
Select @Capacity = Capacity From CourseSections
If @Count < @Capacity
Begin
Insert Into Enrollments Select * From Inserted
End
GO
Я получаю сообщение об ошибке:
'CREATE TRIGGER' должен быть первым оператором в пакете запросов.
Ответы
Ответ 1
Сообщение об ошибке "CREATE TRIGGER" должно быть первым оператором в пакете запросов ". обычно возникает, когда предыдущая группа (партия) операторов не имеет завершающего GO
Итак, я бы предложил добавить add GO
в конец предыдущих операторов пакета.
Ответ 2
Если вы пытаетесь это сделать из SQL Server Management Studio, вот еще один вариант, который работал для меня:
На левой панели щелкните правой кнопкой мыши базу данных и выберите "Новый запрос".
Это соединяет вас с конкретной базой данных. Теперь вы можете ввести свой оператор триггера как первый оператор в открывшемся окне запроса. Нет необходимости в использовании команды.
![enter image description here]()