Re: ODBC Numeric field issue

From: Hiroshi Inoue <inoue(at)tpf(dot)co(dot)jp>
To: Luciane <Luciane(at)copel(dot)com>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: ODBC Numeric field issue
Date: 2010-05-07 20:53:32
Message-ID: 4BE47DCC.5040804@tpf.co.jp
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-odbc

Hi Luciane,

Luciane wrote:
> Hi everyone,
>
> I'm trying to access postgres using a ODBC Driver on a Linux system RedHat,
> but I'm getting errors with numeric fields, it works only with one numeric
> field. Another erro is that it is inserting a NULL record as well.
> Below is my ODBC configuration and extracts from the erros on the debug
> file. I've tried different versions of ODBC Drivers with no success. If any
> one more experient could help me I'll be very happy. Actually I don't know
> what to do anymore.
>
> Thanks in advance.
>
> Luciane
>
>
> ------> Odbc Configuration .odbc.ini
> [PostG]
> #Driver=/usr/lib/libodbcpsql.so.2
> #Driver=/produtos/unixODBC-2.2.14/Drivers/Postgre7.1/.libs/libodbcpsql.so
> #Driver=/produtos/unixODBC-2.2.10/Drivers/Postgre7.1/.libs/libodbcpsql.so
> #Driver=/produtos/unixODBC-2.2.12/Drivers/Postgre7.1/.libs/libodbcpsql.so
> #Driver=/produtos/unixODBC-2.2.13/Drivers/Postgre7.1/.libs/libodbcpsql.so
> Driver=/produtos/unixODBC-2.3.0/Drivers/Postgre7.1/.libs/libodbcpsql.so.2
> #Driver=/usr/lib/psqlodbcw.so
> Description=drive postgres odbc
> ServerPort=10.4.3.21:5432
> Servername=pgs1dsv
> Database=pgs1dsv
> sername=c_gco
> Password=inicio
> ReadOnly=no
> Protocol=7.4
> RowVersioning=No
> ShowSystemTables=No
> ShowOidColumn=No
> FakeOidIndex=No
> Debug=1
> DebugFile=/tmp/postgII.out
> Trace=yes
> TraceFile=/tmp/ODBCTrace.log
> UseServerSidePrepare=1
> DisallowPremature=1
> #Parse=1
>
>
> ------> Debug - inserting NULL Record
> SQLExecute: copying statement params: trans_status=1, len=66, stmt='INSERT
> INTO "teste_carga"("s1", "i1", "n1", "n2") VALUES (?,?,?,?)'
> stmt_with_params = 'INSERT INTO "teste_carga"("s1", "i1", "n1", "n2")
> VALUES (NULL,NULL,NULL,NULL)'
> it's NOT a select statement: stmt=140373784
> send_query(): conn=140316008, query='INSERT INTO "teste_carga"("s1", "i1",
> "n1", "n2") VALUES (NULL,NULL,NULL,NULL)'
> send_query: done sending query

I can't see what kind of result you expect.
Could you send me directly the Mylog output?

> ------> Debug - Issue on the second numeric field
> SQLExecute: copying statement params: trans_status=1, len=66, stmt='INSERT
> INTO "teste_carga"("s1", "i1", "n1", "n2") VALUES (?,?,?,?)'
> copy_statement_with_params: from(fcType)=1, to(fSqlType)=5
> copy_statement_with_params: from(fcType)=1, to(fSqlType)=4
> copy_statement_with_params: from(fcType)=1, to(fSqlType)=2
> copy_statement_with_params: from(fcType)=1, to(fSqlType)=2

How do you bind the 4 parameters?

> stmt_with_params = 'INSERT INTO "teste_carga"("s1", "i1", "n1", "n2")
> VALUES (00001,0000000001,'0000000001") VALUES
> '::numeric,'0000000110Hé'::numeric)'
> it's NOT a select statement: stmt=140373784
> send_query(): conn=140316008, query='INSERT INTO "teste_carga"("s1", "i1",
> "n1", "n2") VALUES (00001,0000000001,'0000000001") VALUES
> '::numeric,'0000000110Hé'::numeric)'
> send_query: done sending query
> read 1, global_socket_buffersize=4096
> send_query: got id = 'Z'
> read 62, global_socket_buffersize=4096
> send_query: got id = 'E'
> send_query: 'E' - ERROR: invalid byte sequence for encoding "UTF8":
> 0xe95d08

In response to

Responses

Browse pgsql-odbc by date

  From Date Subject
Next Message Luciane 2010-05-10 13:31:44 Re: ODBC Numeric field issue
Previous Message Hiroshi Inoue 2010-05-07 20:41:38 Re: ODBC Driver for Windows 64bit