File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
The moose likes JDBC and Relational Databases and the fly likes updating a CLOB field using oracle Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of Java Interview Guide this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Databases » JDBC and Relational Databases
Bookmark "updating a CLOB field using oracle" Watch "updating a CLOB field using oracle" New topic

updating a CLOB field using oracle

Rolf Johansson
Ranch Hand

Joined: Feb 25, 2004
Posts: 32
I need to update a CLOB field in a table with JDBC, using Oracle. Here
is the code I have for retrieving the existing value and adding some more
text onto the CLOB:
try {
String stuff="XXXX";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("select i, v from t where i='3' for update");
if ( {
// clog is field #2
Clob clob = rs.getClob(2);
// concatenate the "stuff" String onto the existing value in the clob
((oracle.sql.CLOB)clob).putString(((oracle.sql.CLOB)clob).length()+1, stuff);
When I run this I get the exception:
java.sql.SQLException: Invalid operation for read only resultset: updateRow
Sot what do I do with the clob in order to update the row?
- Rolf.
Dana Hanna
Ranch Hand

Joined: Feb 28, 2003
Posts: 227
Look at the other "executeQuery" methods on the statement. You should see one that allows you to specify the ResultSet type.
I agree. Here's the link:
subject: updating a CLOB field using oracle
It's not a secret anymore!