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

Откуда:
Сообщений: 157
Добрый день.

Есть две базы даных которые синхронизируют между собой несколько таблиц. Разное направление синхронизации (А->B, A<-B, A<->B), но и не всегда на 100% совпадает структура таблиц. Задача в том чтоб как-то контролировать изменения этих таблиц. Механизм отлажен все работает и синхронизирует базы A и B. На базе А разработчик переименовывает/удаляет/добавляет столбец, но все мы люди и забывает что эта таблица участвует в синхронизации. Можно ли как-то этот момент отловить и контролировать.

Например что-то вроде такого. Есть некий тригер базы который отлавливает изменениия таблиц и разрешает изменять указанные таблицы только если в найдет записи в другой таблице "accsess_alter_table", после изменения записи в этой таблицы изменят свой статус и повторный alter уже не пройдет.
13 окт 16, 09:11    [19776400]     Ответить | Цитировать Сообщить модератору
 Re: Блокировать изменение структуры некоторых таблиц  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
mezzanine
Можно ли как-то этот момент отловить и контролировать.

Например что-то вроде такого. Есть некий тригер базы который отлавливает изменениия таблиц и разрешает изменять указанные таблицы только если в найдет записи в другой таблице "accsess_alter_table", после изменения записи в этой таблицы изменят свой статус и повторный alter уже не пройдет.
Делаете DDL триггер, там проверяете, рассылаете письма; если надо, то запрещаете модификацию с соответствующим сообщением.
13 окт 16, 09:56    [19776612]     Ответить | Цитировать Сообщить модератору
 Re: Блокировать изменение структуры некоторых таблиц  [new]
mezzanine
Member

Откуда:
Сообщений: 157
mezzanine,

Набросал тестовый пример, с триггером на события DDL работает. Может кто еще подкинет идеи. Всегда лучше когда есть с чего выбирать :)
13 окт 16, 09:56    [19776616]     Ответить | Цитировать Сообщить модератору
 Re: Блокировать изменение структуры некоторых таблиц  [new]
alexeyvg
Member

Откуда: Moscow
Сообщений: 31435
mezzanine
Может кто еще подкинет идеи. Всегда лучше когда есть с чего выбирать :)
Можно запретить лазить руками на рабочий сервер.
Пусть пакеты изменений деплоятся после их тестирования в тестовой среде.
13 окт 16, 10:02    [19776654]     Ответить | Цитировать Сообщить модератору
 Re: Блокировать изменение структуры некоторых таблиц  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7868
mezzanine,

проблема решается простым сокращением количества админов на сервере.
13 окт 16, 11:27    [19776973]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить