powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Утилита для слияния структур баз Firebird
5 сообщений из 5, страница 1 из 1
Утилита для слияния структур баз Firebird
    #39428742
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите сабж. Может есть возможность делать это прямо в Ibexpert? Сейчас пользую database comparer, но с недавних пор за ней замечены глюканы. У меня на рабочем компе работает отлично, но когда надо изменить изменит структуру баз по удаленке на торговых точках - начинают валится разнообразные ошибки с разнообразных местах - в основном в процедурах. Чаще всего отказывает создавать эту процедуру:


create or alter procedure SAVE_NELIKVID2
as
declare variable NELIK smallint;
declare variable IDSERII integer;
declare variable IDT integer;
declare variable RASHOD timestamp;
declare variable IDP integer;
declare variable DATA date;
declare variable KOLVO numeric(15,3);
declare variable PRIHOD timestamp;
declare variable ID integer;
declare variable CENA numeric(15,2);
declare variable FLAG smallint;
begin

for select flag, data from flag_nelikvid
into :flag, :data
do begin
end
if ((:flag is null) or (:data < 'now')) then
begin
delete from flag_nelikvid;
insert into flag_nelikvid values (1, 'now');


for select tovar, proizv, serii, cena, prihod, kolvo from nelikv3
into :idt, :idp, :idserii, :cena, :prihod, :kolvo
do begin
update or insert into tnelikvid (id, tovar, proizv, serii, cena, prihod, kolvo)
values (Gen_id(gen_nelikvid_id2, 1), :idt, :idp, :idserii, :cena, :prihod, :kolvo)
matching (tovar, proizv, serii, cena, prihod);
end

delete from vnelikvid;

for select tovar, proizv from nelikv
into :idt, :idp
do begin
insert into vnelikvid (id, tovar, proizv)
values (Gen_id(gen_nelikvid_id, 1), :idt, :idp);
end
end
end


Выдает
data type not supported for arithmetic...бла-бла-бла

Было подозрение на версию Firebird, но обновление его ничего не дало.
Возможно дело в том что ось на клиентах - XP
Хотя у некоторых слияние проходит без сучка без задоринки
Так что пока приходится перекачивать их базы к себе, у себя сливать структуру и закидывать им обратно
...
Рейтинг: 0 / 0
Утилита для слияния структур баз Firebird
    #39428748
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Только запостил как дошло, что раз переменная объявлена как smallint, то видимо Firebird в старых версиях не может проверить условие равна ли она null.
...
Рейтинг: 0 / 0
Утилита для слияния структур баз Firebird
    #39428768
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010smallint, то видимо Firebird в старых версиях не может проверить условие равна ли она null
сказки какие-то
...
Рейтинг: 0 / 0
Утилита для слияния структур баз Firebird
    #39428841
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
арт2010Только запостил как дошло, что раз переменная объявлена как smallint, то видимо Firebird в старых версиях не может проверить условие равна ли она null.

Утебя что, разные версии firebird в разных местах используются? И ты для разных версий один и тот же скрипт из компарера применяешь?

А при апдейте нет ли у тебя подключенных юзеров?
...
Рейтинг: 0 / 0
Утилита для слияния структур баз Firebird
    #39428932
арт2010
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, дело оказалось не в null. Если сливаешь без процедуры, указываешь конкретное значение и пытаешься создать ее потом отдельно, та же самая ошибка. чччД, версии везде 2.5, могут отличать только цифрами после 2.5. Database Comparer установлены на всех клиентах, скриптов там никаких я не применяю, просто выбираю Master и Target Database и нажимаю Compare & Update
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Утилита для слияния структур баз Firebird
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]