Создаете скромный сценарий автоматического изменения SQL? - PullRequest
0 голосов
/ 12 сентября 2009

Я знаю, что существуют инструменты автоматического создания SQL-изменений, однако я хотел бы создать очень легкий инструмент.

В настоящее время я вручную регистрирую любые хранимые процедуры или изменения таблиц (или новые хранимые процедуры или таблицы), хотя это очень эффективно при публикации / публикации, что отнимает много времени (следовательно, пока существуют эти инструменты)

Я просто хочу автоматизировать создание скриптов sql.

Я знаю, что SQL может быть настроен на запись (или вставку записи), когда происходят определенные изменения в базе данных (это фактически заменило бы первую ручную часть регистрации изменений), я нашел учебники о том, как установить это так, я в порядке там.

Часть, которую я хотел бы знать, как сделать:

Учитывая таблицу, которая содержит данные о (новых / измененных хранимых процедурах и новых / измененных таблицах), как я могу затем создать сценарий SQL?

Можно ли выполнить автоматическую генерацию в SQL (например, какие-либо функции / команды?) Или мне придется прибегнуть к написанию программы, чтобы выплевывать сценарий SQL?

1 Ответ

1 голос
/ 12 сентября 2009

Я думаю, что лучший способ справиться с подобными вещами - вести журнал аудита изменений ddl, как вы упомянули. Например, в SQL Server 2005 вы можете запустить триггер «AFTER DDL_TABLE_EVENTS» и использовать функцию EVENT () для получения содержимого модификации ddl (в виде xml). Предположим, у вас была запись триггера модификации ddl в таблицу, содержащую упорядоченный список модификаций, которые вы можете воспроизвести на других серверах - например, dev для тестирования в prod. Когда вы будете готовы вывести целевой сервер на тот же уровень, что и исходный сервер, напишите что-нибудь - даже sproc или функцию для вывода таблицы изменений ddl в текстовый файл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...