我不确定如何使用Java/JDBC将很长的字符串插入到Oracle数据库中。如何使用Java/JDBC在Oracle数据库中存储长度超过4000个字符的字符串?
我有一个大于4000个字符的字符串,可以说它是6000.我想取这个字符串并将它存储在Oracle数据库中。
这样做的方式似乎与CLOB数据类型。好的,所以我将该列声明为描述CLOB。
现在,当需要实际插入数据时,我有一个准备好的语句pstmt。它看起来像pstmt = conn.prepareStatement(“INSERT INTO Table VALUES(?)”)
。
所以我想使用方法pstmt.setClob()
。但是,我不知道如何用它创建一个Clob对象;没有构造函数(大概是因为它可能比可用内存大得多)。
如何将我的字符串放入Clob?
请记住,我不是一个非常有经验的程序员;请尽量保持尽可能简单的解释。效率,良好做法等在这里不是问题,我只是想要绝对最简单的解决方案。如果可能,我想避免下载其他软件包;现在我只使用JDK 1.4,标记为ojdbc14.jar
。我已经环顾了一下,但是我没有能够遵循我找到的任何解释。
如果您有一个不使用Clobs的解决方案,我也会对此开放,但它必须是一列。
啊,createClob()正是我一直在寻找。谢谢。 其实,我得到的错误: 线程“main”中的异常java.lang.AbstractMethodError:oracle.jdbc.driver.OracleConnection.createClob()Ljava/sql/Clob; 当我运行它。它来自以下行: Clob description = conn.createClob(); – Ventrue 2010-05-22 08:09:38
这可能意味着您的jdbc驱动程序不是最新的。 – Bozho 2010-05-22 08:12:46
那么,数据库是10.1.0.3,我没有在Oracle网站上看到该版本的任何JDBC驱动程序下载......我假设我拥有的是10.1.0.3,但我无法确定。 可能值得注意的是,我使用Class.forName(“oracle.jdbc.driver。OracleDriver“); ,而不是一个import语句,我对这件事并不十分了解,但看起来好像可能是相关的 – Ventrue 2010-05-22 08:51:51