Re: Brio returning data through stored procedures. - Mailing list pgsql-odbc
From | Doug Thom |
---|---|
Subject | Re: Brio returning data through stored procedures. |
Date | |
Msg-id | A9D51A18173BD043BC843DAFB9CA48EC9A7A0D@VMAIL.iagr.net Whole thread Raw |
In response to | Brio returning data through stored procedures. ("Doug Thom" <dthom@iagr.net>) |
Responses |
Re: Brio returning data through stored procedures.
Re: Brio returning data through stored procedures. |
List | pgsql-odbc |
I saw it in the docs which I thought was encouraging but I can't see to get it to do what I want. We have a metadata engine that we wrote. It is a layer above our warehouse. A feature of it is that it writes queries for our users, ETL, etc. We have a procedure that constructs the (sometimes quite complex) query and opens it as a cursor and returns it to Brio. Brio, through ODBC, then pulls all the results out of the cursor and we're done. So I would be doing something like: --Do the thing that builds the query. Select query Into query-string From table-that-has-query; Open cursor for query-string; Return cursor; --End pseudo code In Oracle this is done with a ref cursor but maybe not in PG. I note there is a function type called 'sql' rather than 'plpgsql' and I'm trying that out. If this triggers any other thoughts from anyone please share. Thanks again for the help. -Doug -----Original Message----- From: David Gardner [mailto:david.gardner@yucaipaco.com] Sent: Friday, April 06, 2007 12:16 PM To: Doug Thom; pgsql-odbc@postgresql.org Subject: Re: [ODBC] Brio returning data through stored procedures. Hmm are you doing something like: IF something THEN SELECT * FROM tblOne; ELSE SELECT * FROM tblTwo; Not sure what a refcursor is, but it is mentioned in the docs: http://www.postgresql.org/docs/8.1/interactive/plpgsql-cursors.html Doug Thom wrote: > Hello, David, Andreas, > > Thank you for the suggestions. The challenge is that I need a ref cursor > because it is some arbitrary amount of data coming back from the server > in a cursor. Your suggestion shows a defined row but I do not know what > the row looks like so I cannot define a type beforehand. > > However, your comments have me wondering if there is a different route I > can take. Is there anything that is a 'generic row of data'? I see the > type "record" and I'm going to give that a try. > > Thanks again for the prompt response and ideas! > > -Doug > > -----Original Message----- > From: Andreas [mailto:maps.on@gmx.net] > Sent: Friday, April 06, 2007 9:50 AM > To: pgsql-odbc@postgresql.org > Cc: Doug Thom > Subject: Re: [ODBC] Brio returning data through stored procedures. > > Hi Doug > > I dont know Brio either but keep in mind that tables and views are > allready defined types which you could use here. > > So if your procedure just selects a few rows from a view or table but > should return all collumns from the source you don't have to define a > return type. > > > David Gardner schrieb: >> Never worked with Brio, but have you defined a data-type in pgsql that > >> your function would be returning? Something like: >> >> CREATE TYPE "myType" AS >> ("name" text, >> "start" timestamp without time zone, >> "end" timestamp without time zone, >> error text); >> ALTER TYPE "myType" OWNER TO "me"; >> >> then the function definition would start off like: >> CREATE OR REPLACE FUNCTION "getData"() >> RETURNS SETOF "myType" AS >> ..... > > > > ---------------------------(end of broadcast)--------------------------- > TIP 7: You can help support the PostgreSQL project by donating at > > http://www.postgresql.org/about/donate >
pgsql-odbc by date: