Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как выйти из скрипта?  [new]
SNightmare
Member

Откуда:
Сообщений: 10
Написан скрипт который апдейтит базу. В нем есть CREATE TRIGGER statement. Вначале проверяется условие - если false - скрипт недолжен выполнятся. Получается немогу использовать метки т.к. 'CREATE TRIGGER' must be the first statement in a query batch. Т.е. перед 'CREATE TRIGGER' должен быть GO. Как быть - подскажите плииз....
26 янв 06, 12:59    [2289937]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
Timon
Member

Откуда: Dushanbe TJK
Сообщений: 2688
?
return
26 янв 06, 13:01    [2289950]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
динамический sql - т.е., загнать create trigger в exec - тогда он будет в отдельном батче
26 янв 06, 13:02    [2289959]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
SNightmare
Member

Откуда:
Сообщений: 10
Timon
?
return


RETURN некатит - т.к. есть GO - перед CREATE TRIGGER - получается несколько батчей - 1 невыполняется - остальное выполняется...
26 янв 06, 13:03    [2289970]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
SNightmare
Member

Откуда:
Сообщений: 10
daw
динамический sql - т.е., загнать create trigger в exec - тогда он будет в отдельном батче


Это ведь означает оформить create trigger как процедуру или функцию? Если да - то такое решение неподходит...
26 янв 06, 13:10    [2290027]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
SNightmare
Member

Откуда:
Сообщений: 10
SNightmare
daw
динамический sql - т.е., загнать create trigger в exec - тогда он будет в отдельном батче


Это ведь означает оформить create trigger как процедуру или функцию? Если да - то такое решение неподходит...


Спасибо всем за помощь - уже разобрался как надо делать :)

IF () GOTO EXIT_SCRIPT
.....
EXEC('CREATE TRIGGER ....')
....
EXIT_SCRIPT:
26 янв 06, 13:21    [2290086]     Ответить | Цитировать Сообщить модератору
 Re: Как выйти из скрипта?  [new]
daw
Member

Откуда: Муром -> Москва
Сообщений: 7381
SNightmare
Это ведь означает оформить create trigger как процедуру или функцию? Если да - то такое решение неподходит...

нет. я имел в виду нечто такое:
if <условие>
  exec('create trigger ...')
26 янв 06, 13:23    [2290106]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить