Синхронизация структуры базы под FireBird (1.5.2.4731)

Методы, механизмы и инструментарий для репликации

Модератор: kdv

Ответить
KPP
Сообщения: 2
Зарегистрирован: 22 фев 2006, 13:34

Синхронизация структуры базы под FireBird (1.5.2.4731)

Сообщение KPP » 22 фев 2006, 15:58

Делаю синхронизацию структуры базы под FireBird (1.5.2.4731), т.е.
есть две базы: исходная и эталонная, структуру исходной привожу в соответствие структуры эталонной.
Есть две проблемы.
При изменении позиции или изменении COLLATION столбца данные всего столбца становятся NULL.
Делаю так:

изменение позиции столбца:
update RDB$RELATION_FIELDS set
RDB$FIELD_POSITION = 0
where (RDB$FIELD_NAME = имя поля) and
(RDB$RELATION_NAME = имя таблицы)

изменение COLLATION столбца:
update RDB$RELATION_FIELDS set
RDB$COLLATION_ID = 0
where (RDB$FIELD_NAME = имя поля) and
(RDB$RELATION_NAME = имя таблицы)

При этом позиция и COLLATION поля успешно устанавливаются, но
данные всего столбца становятся NULL

Как бороть?
Заранее спасибо.

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Сообщение kdv » 22 фев 2006, 23:11

При изменении позиции или изменении COLLATION столбца данные всего столбца становятся NULL.
ты после этих операторов commit делаешь? изменение позиции столбца делается через alter table. На данные влиять не должно, как и на collate.

KPP
Сообщения: 2
Зарегистрирован: 22 фев 2006, 13:34

Сообщение KPP » 23 фев 2006, 13:32

Проблема решилась.
Всем спасибо.
Зацепил другое поле :roll:

Ответить