| From: | "Ida Schonfeld" <Ida(dot)Schonfeld(at)oclc(dot)org> | 
|---|---|
| To: | <pgsql-odbc(at)postgresql(dot)org> | 
| Subject: | ODBC driver chances function-call in a wrong way | 
| Date: | 2009-01-16 15:58:02 | 
| Message-ID: | 089C615FFB98CE48BBA6E8EB9AD4A0C9044B18CD@mail.pica.nl | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-odbc | 
Hello,
I have the following problem:
I have a PG function in my database which looks like this:
CREATE OR REPLACE FUNCTION help_sel0(IN a int,IN b char(2),OUT
master_fileset INT, OUT master_type CHAR(2), OUT highest_number INT)
RETURNS RECORD AS 
$function$
DECLARE
r RECORD;
BEGIN
                        SELECT INTO  r
master_fileset,master_type,highest_number 
FROM gen_master
WHERE master_fileset= a
AND master_type= b;
master_fileset:=r.master_fileset;
master_type:=r.master_type;
highest_number:=r.highest_number;
END;
$function$
LANGUAGE plpgsql;
When I now want to send with my ODBC-programm the following prepared
statement to the server
{SELECT * FROM gen_master_sel0(?,?);} (with the parameters 10 and 'S2')
 the driver recognizes that I'm calling a "stored procedure", but he
doesn't  notice the given parameter and changes the command to this 
SELECT * FROM gen_master_sel0( 10, E'S2');() .
Is this a bug in the recent driver (8.3.0400) which I'm using or has
anybody any idea what I might have done wrong? I have to say this is the
first time I'm working with Postgres so maybe my function is not ok?!
I'm very thankful for ideas and suggestions :-)
Thx, Ida
| From | Date | Subject | |
|---|---|---|---|
| Next Message | jurijs Nezencevs | 2009-01-16 23:02:02 | Re: ODBCNET | 
| Previous Message | Cornelio Royer | 2009-01-16 15:16:58 | Re: Postgresql and PowerBuilder |