2013-09-05 35 views
0

很抱歉,如果这是一个愚蠢的问题,但我有以下特性在我HBM整数长度的java休眠

,我认为当field1的是,我发现了以下错误的数据库中坚持:

ORA-01438:值大于允许此列

的field1的值,当我持续是2122450943指定的精度时,数据库字段长度是数(18),但它是由于HBM的哪个它的长度是6我收到这个错误?另外,我试图将长度从6改为12,看看它是否有效,尽管没有数据。整数的长度是12?那个数字是6还是12是数字的数量还是数字的长度?

+0

这可能听起来像不好的做法,但是当我不确定一个数字可能会有多长时,我没有指定该字段的长度。例如。身份证可以是任何长度,所以我只是离开它。 (如果是小型/个人项目,这并不坏) –

+0

为什么你认为这是field1而不是另一个领域? – Thierry

回答

0

您正在使用哪个数据库。

在MySQL int值不能有长度超过10

不清楚其他RDBS。

+0

我正在使用Oracle。 – p0tta

+0

所以一定不会有任何问题,因为在Oracle中,INTEGER数据类型通常被称为NUMBER(38)。它的精度范围从1到38. – NCA

+0

所以这意味着我的整数(6)的hibernate属性定义并不意味着什么? – p0tta