From: | "Vilches, Alejandro" <alejandro(dot)vilches(at)intel(dot)com> |
---|---|
To: | "Inoue, Hiroshi" <h-inoue(at)dream(dot)email(dot)ne(dot)jp>, Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com> |
Cc: | "pgsql-odbc(at)postgresql(dot)org" <pgsql-odbc(at)postgresql(dot)org> |
Subject: | Re: Problem calling a function from ODBC application |
Date: | 2017-02-07 00:24:46 |
Message-ID: | 9CE034E149417949A58AA9A4FA7E1C5586DC1952@ORSMSX115.amr.corp.intel.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-odbc |
Hi Hiroshi,
Thanks for your suggestion! That actually worked! It works two ways: "?::timestamp" or "cast(? as timestamp)".
After running further tests, I'm seeing the issue occurs when the function has a parameter of type timestamp. Furthermore, it throws off other parameters after that (e.g. the varchar parameters show up as unknown in the error message). Anyway, I thought I would just mention that in case it helps anything.
I wish there was a way to specify the timestamp type better when binding the parameter in ODBC (or that PostgreSQL wouldn't get confused between timestamp with or without time zone) so that I didn't need to cast it on top of that (as this seems a bit redundant).
Anyway, thanks so much for your help, I really appreciate it!
Alejandro
-----Original Message-----
From: Inoue, Hiroshi [mailto:h-inoue(at)dream(dot)email(dot)ne(dot)jp]
Sent: Monday, February 6, 2017 1:53 AM
To: Vilches, Alejandro <alejandro(dot)vilches(at)intel(dot)com>; Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
Cc: pgsql-odbc(at)postgresql(dot)org
Subject: Re: [ODBC] Problem calling a function from ODBC application
Hi,
On 2017/02/04 9:54, Vilches, Alejandro wrote:
> It's actually without time zone. However, it doesn't seem like ODBC allows me to specify that. When I bind the parameter, I can only say: SQL_TYPE_TIMESTAMP.
How about calling with cast i.e.
my_function3(?, ?, ?, ?, ?::timestamp with time zone, ?, ?, ?, ?, ?, ?, ?, ?, ?) ?
regards,
Hiroshi Inoue
> -----Original Message-----
> From: Inoue, Hiroshi [mailto:h-inoue(at)dream(dot)email(dot)ne(dot)jp]
> Sent: Friday, February 3, 2017 4:45 PM
> To: Vilches, Alejandro <alejandro(dot)vilches(at)intel(dot)com>; Adrian Klaver
> <adrian(dot)klaver(at)aklaver(dot)com>
> Cc: pgsql-odbc(at)postgresql(dot)org
> Subject: Re: [ODBC] Problem calling a function from ODBC application
>
> Hi,
>
> On 2017/02/04 9:31, Vilches, Alejandro wrote:
>> Oh goodness, that's embarrassing :).
>>
>> Okay, so I've tried the following:
>>
>> - I fixed the small sample program and now that one executes
>> successfully
>>
>> - I created another sample program that calls a stored function with the same number of parameters and types as the one in my real application and now that fails with the following error message (the same error message I originally reported):
>> ERROR: function my_function3(bigint, bigint, integer, integer,
>> timestamp with time zone, integer, integer, integer, integer,
>> integer, integer, unknown, unknown) does not exist;
> Is the type of parameter 'timestamp with time zone' right?
>
>> Error while preparing parameters
>>
>> I've attached the new sample program. The stored function can be any dummy function.
>>
>> Thanks!
>> Alejandro
From | Date | Subject | |
---|---|---|---|
Next Message | Inoue, Hiroshi | 2017-02-07 11:54:54 | Re: Problem calling a function from ODBC application |
Previous Message | Adrian Klaver | 2017-02-06 20:57:28 | Re: [HY000] no error information; Error while preparing parameters |