JDBC driver method setClob always uses getAsciiStream()

From: Jochen Terstiege <jochen(dot)terstiege(at)quinscape(dot)de>
To: pgsql-jdbc(at)postgresql(dot)org
Subject: JDBC driver method setClob always uses getAsciiStream()
Date: 2010-09-07 15:31:49
Message-ID: 4C865AE5.5000906@quinscape.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Using driver: postgresql-8.4-701.jdbc3.jar

The method setClob() in the AbstractJdbc2Statement calls the method
getAsciiStream() on the provided Clob. This leads to problems if the
given Clob contains an UTF-8 encoded string.

Shouldn't the driver call getCharacterStream() instead? Can this problem
be solved in a different way?

Relevant code from the class:

public void setClob(int i, Clob x) throws SQLException
{
checkClosed();

if (x == null)
{
setNull(i, Types.CLOB);
return;
}

InputStream l_inStream = x.getAsciiStream();
...

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message joiny 2010-09-08 08:03:30 postgresql 8.4 type mapping problem
Previous Message Florian Weimer 2010-09-06 12:09:25 Re: uuid values as parameters