From: | Thomas Kellerer <spam_eater(at)gmx(dot)net> |
---|---|
To: | pgsql-jdbc(at)postgresql(dot)org |
Subject: | Re: Slow performance updating CLOB data |
Date: | 2016-07-18 08:43:32 |
Message-ID: | nmi4rk$ki0$1@ger.gmane.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-jdbc |
Nicola Zanaga schrieb am 18.07.2016 um 10:13:
> Here a snippet:
>
> st= connection.createStatement(ResultSet.*/TYPE_FORWARD_ONLY/*, ResultSet.*/CONCUR_UPDATABLE/*);
> ResultSet resultSet= st.executeQuery("SELECT id, data FROM TestClob1 WHERE id = 1 ");
>
>
> resultSet.next();
> resultSet.updateCharacterStream(2, *new*StringReader("hello"), "hello".length());
> resultSet.updateRow();
> resultSet.close();
Did you try resultSet.updateString(2, "hello") instead?
> Most of the time is spent in method PgResultSet.isUpdateable because the table has a primary key but doesn't have a "oid" column.
> So the code tries to get primary keys from the query, using getMetaData().getPrimaryKeys.
But in order to run an UPDATE on the table, the driver will need to retrieve the PK, there is no way around that.
I guess using updateString() won't change that
Thomas
From | Date | Subject | |
---|---|---|---|
Next Message | Vladimir Sitnikov | 2016-07-18 08:53:49 | Re: Slow performance updating CLOB data |
Previous Message | Nicola Zanaga | 2016-07-18 08:13:59 | R: Slow performance updating CLOB data |