Страница 1 из 1

Контроль версионности при работе с FireBird

Добавлено: 17 ноя 2006, 19:00
inspirion
CREATE TABLE ACTION_STATUS (
ID_AS ID NOT NULL,
NAME STRING200,
DESCRIPTION BLOB_INFO,
DATE_RECORD NOW
);
ALTER TABLE ACTION_STATUS ADD CONSTRAINT PK_ACTION_STATUS PRIMARY KEY (ID_AS);

А таблица в базе до изменений выглядела так:
CREATE TABLE ACTION_STATUS (
ID_AS ID NOT NULL,
NAME STRING200,
DATE_RECORD NOW
);
ALTER TABLE ACTION_STATUS ADD CONSTRAINT PK_ACTION_STATUS PRIMARY KEY (ID_AS);

Тоесть в базе А в таблице ACTION_STATUS был столбец DESCRIPTION а в таблице B его небыло, но после обьедения версий в Starteam в скрипте для таблицы В появилась информация об этом столбце.
При попытке выполнить этот скрипт в базе B мы естественно получим ошибку ибо такая таблица уже есть. Так что нужен инструмент который сможет сравнить скрипт таблицы ACTION_STATUS в базе B с файлом-скриптом и выдать на выход строку типа
ALTER TABLE ACTION_STATUS.....
Во собственно и вопрос. Надеюсь доступно описал проблему.
Заранее благодарен за дельные советы.

Ps. Речь идет именно о работе по версионности БД.

Добавлено: 17 ноя 2006, 19:20
WildSery
Компарером встроенным в IBExpert.
Либо отдельным компарером http://www.clevercomponents.com/product ... mparer.asp

Добавлено: 21 ноя 2006, 09:27
pastor
1) завести в БД номер структуры
2) сделать механизм проверки соответсвия апдейта номеру структуры
3) делать изменения апдейтами

Добавлено: 21 ноя 2006, 14:32
WildSery
[quote="pastor"][/quote] :lol: Ему до этого ещё далеко, раз такие вопросы задаёт.