Вычисляемые поля в ms-access возвращают неправильные/усеченные значения при использовании UCanAccessJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Вычисляемые поля в ms-access возвращают неправильные/усеченные значения при использовании UCanAccess

Сообщение Anonymous »

Я использую UCanAccess для вставки или обновления данных в базу данных доступа со следующими столбцами
  • d1 double
  • d2 double
  • d рассчитывается как IIf((IIf([d1] Is Null,0,[d1])=-999),Null,IIf([d2] Is Not Null,Round(([d1]+[d2])/2,1),[d1]))
где d — вычисляемое поле для среднее значение d1 и d2.
В доступе все работает нормально. Но если я вставлю или обновлю через UCanAccess, я получу усеченные результаты в столбце d.
Вот мой код:

Код: Выделить всё

Class.forName("net.ucanaccess.jdbc.UcanaccessDriver");
con = DriverManager.getConnection("jdbc:ucanaccess://" + database+ ";singleconnection=true", "", "");

try(Statement stmt = con.createStatement();){
stmt.execute("INSERT INTO Tab (d1, d2) VALUES (2.2, 2.4)");
//stmt.execute("UPDATE Tab SET d2 = 2.6;");
}
Значения написаны правильно, но в столбце d указано 2 вместо 2,3.
Есть идеи, что здесь не так?

Подробнее здесь: https://stackoverflow.com/questions/793 ... g-ucanacce
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»