Re: I have a problem of abstraction...

Поиск
Список
Период
Сортировка
От Dave Cramer
Тема Re: I have a problem of abstraction...
Дата
Msg-id D7165560-214A-4034-985C-D047AA0544EB@fastcrypt.com
обсуждение исходный текст
Ответ на I have a problem of abstraction...  (Alfredo Rico <alfredorico@gmail.com>)
Ответы Re: I have a problem of abstraction...  (Alfredo Rico <alfredorico@gmail.com>)
Список pgsql-jdbc
Alfredo,

The simplest and quickest way is to force v2 protocol

http://jdbc.postgresql.org/documentation/80/connect.html#connection-
parameters

Dave
On 6-Oct-05, at 9:27 AM, Alfredo Rico wrote:

> Hi friends, greetings.
> Please apologize by my bad english ;-(
>
> I need to resolve a problem of data type abstraction using JDBC.
>
> In first place, please check out the following java code fragment:
> /********************************/
> //for each row that I want to insert
> for(int i=1 ; i<= this.columnNumbers ; i ++)
> {
>    this.insertColumn( columnNames[i] , columnValues[i] , i  );
>
> }
> /******************************/
> In the code above, for each row that I want to insert:
> columnNames is a String vector containing columns names for a given
> table.
> columnValues is a String vector containing the values for each
> column for the same table.
> Ok, this string vector could contain int, float, double, Date,
> character string, I mean basic types,
> represented as string. The reason is due to this vector is
> fulfilled by users parameters
> that has been sent via HttpServletRequest and method
> request.getParameter("parameter")
> return its values as string.
>
>
> Now, please look at the following java method:
>
> //For each row that I want to insert:
> public void insertColumn(String columnName, Object X , int i )
> {
>    try{
>         if(i == 1) //only for the first column
>            this.rs.moveToInsertRow();
>
>          this.rs.updateObject(columnName , X );
>
>          if( i == this.columnNumber )//if all columns (for one row)
> were updated
>             this.rs.insertRow();
>
>         }catch(SQLException e )
>          {
>              System.out.println("Error: "+e);
>          }
> }
>
>
> Ok, if I'm using JDBC driver version 7.4 Build 216 there isn't
> problem with the data types.
> The method ResultSet.updateObject works perfectly inserting Int,
> float, double, Date.
> Evrything works very well.
>
> But I need use JDBC driver verion 8.0 Build 312 for another
> reasons, and the java code above not works
> because this version of JDBC driver is very strict about data types.
>
> I really need insert my data in an abstract way, I mean without
> knowing the data types.
> (Application requirements). I would not like to use a bulk of if
> setences for various data types
> according to obtained by using ResultSetMetaData.
>
> How could I overcome this situation ?
>
> Beforehand thank you very much by your help and support.
>
> Kind Regards.
> Alfredo Rico.


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

Предыдущее
От: Alfredo Rico
Дата:
Сообщение: I have a problem of abstraction...
Следующее
От: Alfredo Rico
Дата:
Сообщение: Re: I have a problem of abstraction...