2012-12-31 40 views
0

哪种数据类型可用于存储0.00000011000之间的数字?哪个数据类型用于小数?

我试过使用数字(10)作为数据 - 0.01124.但它将它存储为'0

+0

这一切都记录在手册中:http://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements001.htm#sthref80 –

+0

@a_horse_with_no_name:有没有办法将Number(10)更改为数字(10,5)。它是否适用于较旧的值。???请回复 – user1495475

+0

http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_3001.htm#CJAHHIBI –

回答

0

您需要至少将此存储为number(11,7)。旧值将被保留,但由于首先使用(10),它们不会恢复任何丢失的精度。即变为00.01124在您更改列后仍将为0,因为将数据推入数字(10,0)字段时该精度会丢失。

alter table foo modify(your_col number(x,y)); 

然而,如果你的表已经是数(10),那么,现在将工作的最低有7精度是:

alter table foo modify(your_col number(17,7)); 

有发言权(11,7)会需要完全没有数据的旧列。

相关问题