У нас есть приложение, которое пытается выполнить массовую вставку в таблицу в postgresql (думаю, 9.1, у меня нет доступа, чтобы помочь коллеге удаленно устранять неполадки). Трассировка показывает, что необработанные значения генерируются правильно и правильно передаются в ODBC.
Проблема возникает, когда столбец определен как NUMERIC, но не имеет заданного масштаба или точности. Кажется, есть «случайные» артефакты округления. Иногда округляет в большую сторону, иногда в меньшую, независимо от количества знаков после запятой. Это видно, когда затем запрашиваются значения из массовой вставки.
Я знаю, что это может вызвать проблемы со строками, но не уверен, что это имеет значение для числовых типов данных. База данных закодирована в Windows 1252, и они используют драйвер Unicode postgresql. Наконец, немного информации о 32-битной виртуальной машине Windows с параметрами config_file по умолчанию.
Вопрос в том, что могло/могло быть причиной этого?
Заранее спасибо.