Re: How the get variables out of a plggsql RECORD by column number
| От | Jeff Eckermann |
|---|---|
| Тема | Re: How the get variables out of a plggsql RECORD by column number |
| Дата | |
| Msg-id | 20050118144108.17423.qmail@web20828.mail.yahoo.com обсуждение |
| Ответ на | How the get variables out of a plggsql RECORD by column number ("Tjibbe Rijpma" <t.b.rijpma@student.tudelft.nl>) |
| Ответы |
Re: How the get variables out of a plggsql RECORD by column number
|
| Список | pgsql-novice |
--- Tjibbe Rijpma <t.b.rijpma@student.tudelft.nl>
wrote:
> A record type contians the 1st row form dynamic
> query result.
>
> From that row I want to select the 1st column.
>
> How do I do that?
By name, i.e. "_row.firstfieldname". Perhaps you are
looking for a generic function, that can be applied to
any table? Pl/pgsql is not equipped to do that. I
believe that you can achieve what you want with
pl/tcl, pl/python or pl/perl (not sure about the
last).
>
>
> CREATE OR REPLACE FUNCTION dswz.save_query (TEXT)
> RETURNS BOOL AS '
> DECLARE
> _query ALIAS FOR $1;
> _temp_query TEXT;
> _row RECORD;
> _id INT8;
> _type INT8;
>
> BEGIN
> /* select the 1st row*/
> _temp_query := ''SELECT * FROM ('' || _query || '')
> AS table_source LIMIT 1'';
>
> FOR _row IN EXECUTE temp_query LOOP
>
> /* select the 1st column */
> _id := ????_row[0]??????
>
> END LOOP;
>
> /* Saves the query and his type */
> SELECT INTO _type type FROM objects WHERE id = _id;
> INSERT INTO queries VALUES (_query, _type);
>
>
> RETURN TRUE;
> END
>
> ' LANGUAGE 'plpgsql' SECURITY DEFINER;
__________________________________
Do you Yahoo!?
Yahoo! Mail - now with 250MB free storage. Learn more.
http://info.mail.yahoo.com/mail_250
В списке pgsql-novice по дате отправления: