Ошибка преобразования в переменной хоста или параметре * N - PullRequest
4 голосов
/ 10 сентября 2009

Я получаю эту ошибку при операторе вставки в базу данных AS400, используя Java с JDBC.

Ответы [ 2 ]

6 голосов
/ 10 сентября 2009

Я понял, у меня было числовое поле с длиной 4 и десятичными цифрами 2. В своей вставке я пытался вставить 100 в это числовое поле, которое выдало эту ошибку.

I altered the table and made it numeric with length 9 and decimal digits 2 <br>and the insert worked.

, хотя ошибка говорит «Ошибка преобразования», на самом деле это неправильная длина поля.

1 голос
/ 14 марта 2016

Я столкнулся с этой проблемой, когда таблица была обновлена ​​с 2 цифр до 3 для идентификаторов пользователей, и запрос вставлен в таблицу истории, где таблица истории не была обновлена ​​до 3 цифр для идентификатора пользователя. Использовал Alter Table для исправления таблицы истории и все хорошо.

alter table "Table Name" ALTER COLUMN "COLUMN NAME" SET DATA TYPE NUMERIC(3)

Сообщение об ошибке не является интуитивно понятным:

Ошибка преобразования для переменной или параметра * N (# -302) [IBM] [Система Драйвер ODBC для iAccess] [DB2 for i5 / OS] SQL0012 - корреляция без Произошла квалификация для столбца "имя столбца" в таблице "Имя таблицы". (# 12)

...