проблема с базой firebird

Lera

Участник
Привет, есть небольшая программка - АРМ сотрудника, в основе которой лежит субд firebird, обрабатываемые данные лежат тоже в базе. После обновления версии ПО и соответственно обновления бд, база перестала работать. :recovery:
Критическая ситуация
Ошибка при обновлении БД - Unsuccesfull metadata update / failed attempt to store duplicate value (visible to active transactions)
image_150.png
Разработчик ПО прислал инструкции и bat файлик со следующими командами:
Код:
gfix -user SYSDBA -password masterkey DATA.fdb -mend -ignore
gbak -user SYSDBA -password masterkey -b -l -ignore -g -v DATA.fdb DATA.fbk
gbak -user SYSDBA -password masterkey -c -rep -v DATA.fbk DATA.fdb
Толком где его выполнять и чего делать тоже не объяснили.
Естественно батник не работает на компе.

Подскажите что такое gfix и gbak в коде скрипта?
 

Fedor

Случайный прохожий
gbak является программой, которая подсоединяется к базе данных, стартует транзакцию snapshotLINK, и затем сохраняет в специальный файл метаданные (описания таблиц, процедур, триггеров и т. д.) и данные (запросами select * from tablename).

Gfix - утилита для починки БД, спасает но не всегда. Лучше использовать IBSurgeon FirstAid
Как ими пользоваться http://firebirdsql.su/doku.php?id=gbak
 

Lera

Участник
Спасибо, буду читать. По идее он не должен срабатывать из cmd
 

Razer

Случайный прохожий
надо запускать из каталога где лежат эти утилиты
 

Cocos

Случайный прохожий
читайте матчасть
Ошибки при создании метаданных

Создание индекса с существующим именем

Код:
CREATE INDEX COUNTRY_IDX1 ON COUNTRY (CURRENCY);
CREATE INDEX COUNTRY_IDX1 ON COUNTRY (CURRENCY);
This operation is not defined for system tables.
unsuccessful metadata update.
STORE RDB$INDICES failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_5»


Создание генератора с существующим именем
Код:
CREATE generator test;
CREATE generator test;
This operation is not defined for system tables.
unsuccessful metadata update.
DEFINE GENERATOR failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_11».


Создание таблицы с одноименными полями

Код:
CREATE TABLE test(x INT, x VARCHAR(30));
This operation is not defined for system tables.
unsuccessful metadata update.
STORE RDB$RELATION_FIELDS failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_15».


Создание процедуры с одноименными полями

Код:
CREATE PROCEDURE test (t INT) RETURNS (t VARCHAR(30))
AS
BEGIN
END;
This operation is not defined for system tables.
unsuccessful metadata update.
STORE RDB$PROCEDURE_PARAMETERS failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_18».

Создание домена с существующим именем
Код:
CREATE DOMAIN test SMALLINT;
CREATE DOMAIN test SMALLINT;
This operation is not defined for system tables.
unsuccessful metadata update.
STORE RDB$FIELDS failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_2».

Создание триггера с существующим именем

Код:
CREATE TRIGGER country_bi0 FOR country
active BEFORE INSERT POSITION 0
AS
BEGIN
  /* Trigger text */
END;
CREATE TRIGGER country_bi0 FOR country
active BEFORE INSERT POSITION 0
AS
BEGIN
  /* Trigger text */
END;
This operation is not defined for system tables.
unsuccessful metadata update.
DEFINE TRIGGER failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_8».

Создание UDF с существующим именем

Код:
DECLARE EXTERNAL FUNCTION DIV
    INTEGER,
    INTEGER
RETURNS DOUBLE PRECISION BY VALUE
ENTRY_POINT 'IB_UDF_div' MODULE_NAME 'ib_udf';
DECLARE EXTERNAL FUNCTION DIV
    INTEGER,
    INTEGER
RETURNS DOUBLE PRECISION BY VALUE
ENTRY_POINT 'IB_UDF_div' MODULE_NAME 'ib_udf';
This operation is not defined for system tables.
unsuccessful metadata update.
DEFINE FUNCTION failed.
attempt to store duplicate value (visible to active transactions) in unique index «RDB$INDEX_9».

http://firebirdsql.su/doku.php?id=oshibki_pri_sozdanii_metadannyx
 
Последнее редактирование модератором:
Верх Низ