JDBC driver writes binary data ONLY as Large Object

Поиск
Список
Период
Сортировка
От Bill
Тема JDBC driver writes binary data ONLY as Large Object
Дата
Msg-id 398726DF.D52AACA7@cplane.com
обсуждение исходный текст
Список pgsql-interfaces
The problem is that PreparedStatement.setBytes() only writes Large
Objects.  It should do something like ResultSet.getBytes(), which
checks the column meta-data to see if the column holds an OID or
not, then do the right thing based on that.

Bill <bouma@cplane.com>

-------------------------------------------------

.../postgresql-7.0.2/src/interfaces/jdbc/org/postgresql/jdbc2/PreparedStatement.java

/**  * Set a parameter to a Java array of bytes.  The driver converts this  * to a SQL VARBINARY or LONGVARBINARY
(dependingon the argument's  * size relative to the driver's limits on VARBINARYs) when it sends  * it to the database.
*  * <p>Implementation note:  * <br>With org.postgresql, this creates a large object, and stores the  * objects oid in
thiscolumn.  *  * @param parameterIndex the first parameter is 1...  * @param x the parameter value  * @exception
SQLExceptionif a database access error occurs  */ public void setBytes(int parameterIndex, byte x[]) throws
SQLException{   LargeObjectManager lom = connection.getLargeObjectAPI();   int oid = lom.create();   LargeObject lob =
lom.open(oid);  lob.write(x);   lob.close();   setInt(parameterIndex,oid); }
 



В списке pgsql-interfaces по дате отправления:

Предыдущее
От: Kovacs Zoltan Sandor
Дата:
Сообщение: Re: Function sequence error with ODBCExpress
Следующее
От: Bill
Дата:
Сообщение: ODBC interface unable to READ Large Object data