Skip site navigation (1) Skip section navigation (2)

Re: BUG #6534: Passing numeric Bind variables to ODBC driver convers to "Double precision"

From: Barry Bell <Barry_Bell(at)harte-hanks(dot)com>
To: Amit Kapila <amit(dot)kapila(at)huawei(dot)com>
Cc: "pgsql-bugs(at)postgresql(dot)org" <pgsql-bugs(at)postgresql(dot)org>
Subject: Re: BUG #6534: Passing numeric Bind variables to ODBC driver convers to "Double precision"
Date: 2012-04-11 12:54:19
Message-ID: 542B943ED5D72E408BF9CBBD61ABC94D52D10E8B@VA3DIAXVSC31.RED001.local (view raw or flat)
Thread:
Lists: pgsql-bugs
Yes, this is happening when variables are passed to a function
The call below does work:
Nvar
Select * from mytable where id=?nvar 

Select function call below will work if they function is defined as "Double precision" 
(that and the error I am getting from Postgres says it is be passed "Double precision")

We will get the "unknown function "Double precision" parameter" error when
We are calling a function with numeric or integer parameters.

Is there an ODBC setting for incoming numeric bind variables?


Thanks
Barry Bell, IT Department 
Office: 954-429-3771 x267 Fax: 954-281-1464 email Barry_Bell(at)harte-hanks(dot)com

-----Original Message-----
From: Amit Kapila [mailto:amit(dot)kapila(at)huawei(dot)com] 
Sent: Wednesday, April 11, 2012 6:15 AM
To: Barry Bell
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: RE: [BUGS] BUG #6534: Passing numeric Bind variables to ODBC driver convers to "Double precision"

Does it happen only for function call or otherwise for Insert statement also?
What is your function declaration.
How have you verified that in postgres it is double precision.

-----Original Message-----
From: Barry Bell [mailto:Barry_Bell(at)harte-hanks(dot)com]
Sent: Tuesday, April 10, 2012 6:00 PM
To: Amit Kapila
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: RE: [BUGS] BUG #6534: Passing numeric Bind variables to ODBC driver convers to "Double precision"

No matter what numeric type I try to pass,(integer, numeric, currency) the ODBC driver is turning it into "Double Precision"
Only If I send the value as a string
Declare nvar as numeric(10,2)
Nvar=1, nvar=1.0000 or nvar=1.00 will come across as "Double Precision"
input bind variable.
Sending
Nvar="1" will work but there are issues with converting numbers to character,

Any Ideas?


Thanks
Barry Bell, IT Department
Office: 954-429-3771 x267 Fax: 954-281-1464 email Barry_Bell(at)harte-hanks(dot)com


-----Original Message-----
From: Amit Kapila [mailto:amit(dot)kapila(at)huawei(dot)com] 
Sent: Monday, April 09, 2012 8:49 PM
To: Barry Bell
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: RE: [BUGS] BUG #6534: Passing numeric Bind variables to ODBC driver
convers to "Double precision"

In ODBC while binding variable using SQLBindParameter(..) API you might be
using SQL_DOUBLE or SQL_Numeric or some similar datatype to send the
variable, that's why in postgres it is showing as "Double precision"

-----Original Message-----
From: pgsql-bugs-owner(at)postgresql(dot)org
[mailto:pgsql-bugs-owner(at)postgresql(dot)org] On Behalf Of Robert Haas
Sent: Monday, April 09, 2012 7:31 PM
To: barry_bell(at)harte-hanks(dot)com
Cc: pgsql-bugs(at)postgresql(dot)org
Subject: Re: [BUGS] BUG #6534: Passing numeric Bind variables to ODBC driver
convers to "Double precision"

On Thu, Mar 15, 2012 at 3:04 PM,  <barry_bell(at)harte-hanks(dot)com> wrote:
> The following bug has been logged on the website:
>
> Bug reference:      6534
> Logged by:          Barry Bell
> Email address:      barry_bell(at)harte-hanks(dot)com PostgreSQL version: 
> 9.1.2 Operating system:   Windows Server 2003
> Description:
>
> Using the lastest of ODBC ANSI driver for windows 32bit ver 9.00.03 
> Calling from MS VFP 9.0
>
> public nvar as interger
> nvar=1
> running the following sql:
> "( select function_pkg(?nvar) "
>
> The bind variable nvar will show in postgres as "Double Precision" 
> format instead of integer.
>
> Is there a setting on the ODBC driver for incoming vairables?
> If not it is a buf.

Given the lack of any response here, I suggest reposting this to the
pgsql-odbc mailing list.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company

--
Sent via pgsql-bugs mailing list (pgsql-bugs(at)postgresql(dot)org) To make changes
to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs






In response to

Responses

pgsql-bugs by date

Next:From: keithDate: 2012-04-11 17:49:16
Subject: BUG #6581: pg_dumpall --no-tablespaces option still sets defaulttablespace
Previous:From: Amit KapilaDate: 2012-04-11 10:14:40
Subject: Re: BUG #6534: Passing numeric Bind variables to ODBC driver convers to "Double precision"

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group