2016-02-10 3 views
0

Мне нужно перенести базу данных из Firebird 1.5 в PostgreSQL (версия 8.4, это версия, установленная на сервере моего клиента. Это не под моим контролем, поэтому я не могу обновить).Триггеры при миграции из Firebird в Postgresql

Я использовал пробную версию программы EasyFrom, и она работала для таблиц, но кажется, что триггеры не были перенесены (я использовал команду select * from pg_trigger, и триггеры, которые я хотел выполнить, не были показаны, а также в pgAdmin , в схемах> Публичные> Таблицы> specific_table> Trigger нет ничего)

Есть ли программа или простой способ переноса триггеров? Или мне нужно вручную создать миграцию триггера?

+0

Несвязанные, но: зачем мигрировать до 9.1 _today_? 9.1 - это срок службы в течение 7 месяцев. Если вы делаете обновление сегодня (2016), вы должны пойти на 9,4 или 9,5 –

+0

Нет конкретной причины, это просто версия, которую я имею на своем компьютере, и я подумал, что должен указать версию. На самом деле хуже: клиентский сервер использует PostgreSQL 8.4 ... Я отредактирую вопрос –

+1

Триггеры часто содержат процедурный код, который может сделать это довольно сложным, поскольку разные СУБД используют разные процедурные языки. – IMSoP

ответ

2

Короткий ответ: нет.

Долгий ответ: каждая база данных имеет свой диалект для триггеров и их собственные причуды, которые необходимо учитывать. Хотя это можно было бы автоматически перевести, есть, насколько мне известно, инструменты, которые делают это для вас.

Другими словами: вам нужно будет сделать это самостоятельно.