Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DDL скрипрт без Go / 5 сообщений из 5, страница 1 из 1
17.02.2020, 15:04
    #39927521
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL скрипрт без Go
SQL 2012

-- 1-й прямой скрипт
Код: sql
1.
2.
Alter Table  PhysicalWarehouseDop   Add IsWorkWithPretension  Bit constraint DF_IsWorkWithPretension DEFAULT (1) ;
Update PhysicalWarehouseDop Set IsWorkWithPretension = 1 ;




-- Rollback
Код: sql
1.
2.
Alter Table  PhysicalWarehouseDop   Drop constraint  DF_IsWorkWithPretension
Alter Table  PhysicalWarehouseDop   Drop column IsWorkWithPretension  



В 1 скрипт надо бы вставить Go ( но самописный тул котрый накатыавет не поддерживает Go )
Этот тул при накате выдал
Invalid Column: IsWorkWithPretension


Накатываю в 1-й раз из SSMS получаю ТУЖЕ ошибку.
Запускаю роллбаск скрипты
и снова скрипт - все ОК
еще раз - тоже все ок.

закрыавю вкладку SSMS - открываю снова - тоже все ОК
Почему в 1 раз в SSMS выдалась ошибка - а потом все OК ????
...
Рейтинг: 0 / 0
17.02.2020, 15:07
    #39927524
Гавриленко Сергей Алексеевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL скрипрт без Go
Код: sql
1.
2.
exec ( 'Alter Table  PhysicalWarehouseDop   Drop constraint  DF_IsWorkWithPretension' )
exec ( 'Alter Table  PhysicalWarehouseDop   Drop column IsWorkWithPretension  ' )
...
Рейтинг: 0 / 0
17.02.2020, 16:09
    #39927554
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL скрипрт без Go
Гавриленко Сергей Алексеевич
Код: sql
1.
2.
exec ( 'Alter Table  PhysicalWarehouseDop   Drop constraint  DF_IsWorkWithPretension' )
exec ( 'Alter Table  PhysicalWarehouseDop   Drop column IsWorkWithPretension  ' )



Только готовьтесь с апострофами развлекаться.
...
Рейтинг: 0 / 0
17.02.2020, 16:45
    #39927563
Гулин Федор
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL скрипрт без Go
Гавриленко Сергей Алексеевич,

Правильно я понимаю что в таком случае оно в 2 транзакциях
тогда когда в одном скрипте без Go в одной

Ну как бы вариант да (я просто разбил на 2 )

Но объяснения почему в 1 раз ошибка произошла а потом нет - я пока не нашел.
...
Рейтинг: 0 / 0
17.02.2020, 18:55
    #39927632
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
DDL скрипрт без Go
Гулин Федор
SQL 2012

-- 1-й прямой скрипт
Код: sql
1.
2.
Alter Table  PhysicalWarehouseDop   Add IsWorkWithPretension  Bit constraint DF_IsWorkWithPretension DEFAULT (1) ;
Update PhysicalWarehouseDop Set IsWorkWithPretension = 1 ;



Invalid Column: IsWorkWithPretension

Почему в 1 раз в SSMS выдалась ошибка - а потом все OК ????


Патаму, что мануалы надо чтить.
Низзя Alter Table и UPDATE этой же таблицы.
в одном пакете.
И это документировано.

Гулин Федор

Правильно я понимаю что в таком случае оно в 2 транзакциях
тогда когда в одном скрипте без Go в одной


Транзакции - отдельно.
Скрипты - отдельно.
Go - тоже отдельно.

Код: sql
1.
2.
3.
4.
begin transaction;
exec ( 'Alter Table  PhysicalWarehouseDop   Drop constraint  DF_IsWorkWithPretension' )
exec ( 'Alter Table  PhysicalWarehouseDop   Drop column IsWorkWithPretension  ' )
commit transaction;
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / DDL скрипрт без Go / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]