2012-03-13 61 views
0

我使用hibernate将我的类映射到oracle数据库。但是,当我尝试插入一些东西,得到:关于冬眠与oracle

java.sql.BatchUpdateException: ORA-12899: value too large for column 

我使用休眠工具生成此表,反正是有,我可以手动更改列大小的设置? 我试图设置hbm.xml文件中的length =“1000”和对象类中的@Column(length = 1000),但这些都不起作用。

谢谢。

+0

什么是列基类型?假设它是String/varchar是否正确? – duffymo 2012-03-13 00:58:44

+0

我的专栏是字符串,它不会超过1000字节。 – 2012-03-13 01:04:23

+0

Oracle最大尺寸在这里:http://ss64.com/ora/syntax-datatypes.html。什么是数据值?确定你不想要CLOB或BLOB? – duffymo 2012-03-13 01:07:51

回答

1

多大实际价值?你可以考虑使用一个Lob作为oracle中的最大值,就像varchar是4000.你可以在字段/ setter上使用@Lob注解,如果你想要这样做的话。

+0

感谢您的建议,但我的专栏不会超过1000人。是否有必要更改为高球?谢谢! – 2012-03-13 01:08:20

+0

您是否确实验证过数据库列的长度为1000?不只是在你的代码中,而是在数据库本身。 – AHungerArtist 2012-03-13 02:48:59

+0

我认为oracle可以为它保存4000个字节。现在我正在使用clob:)谢谢! – 2012-03-13 16:58:57