java - 伊巴蒂斯+Oracle : How to update a float value

标签 java floating-point ibatis oracle9i

我正在尝试更新oracle数据库中的浮点值,但保存的值只是浮点值的整数部分。

我正在使用这个表达式

update TABLE
SET VALUE = #value:NUMERIC#
WHERE ID = #id#

值定义为 Number(19,4) NULL

最佳答案

您很可能正在尝试使用浮点值更新数据类型为 NUMBER(p) 的列。

例如,如果我创建一个列类型为 NUMBER(2) 的表并尝试将 10.2 插入该列,则插入的实际值为 10。 试试这个。

CREATE TABLE t
  ( a NUMBER(2)
  );
INSERT INTO t VALUES
  (10.2
  );
SELECT * FROM t;

输出将为 10。 如果要将浮点值保存到列中,请将其数据类型更改为“NUMBER”,或者如果您确定浮点值的精度和小数位数,则可以使用 NUMBER(p,s)。阅读有关 NUMBER 类型 here 的信息

关于java - 伊巴蒂斯+Oracle : How to update a float value,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4025180/

相关文章:

java - 渲染前如何获取textview的行数?

types - IEEE 754 float 无法准确表示的第一个整数是哪一个?

floating-point - 相对误差和摆动

java - 如何 : Dynamically-defined properties in Java

java - ibatis中选择查询,以hashMap为parameterClass

java - 如何使用 java 从太阳风 Orion Rest API 获取 JSON 数据

java - 无法启动jBoss AS 7.1

java - 为什么不同的谓词接口(interface)n JAVA 8?

floating-point - 正数比负数快吗

mysql - IBatis如何在一次调用中执行多个查询