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  ("Keith Worthington" <keithw@narrowpathinc.com>)
Список 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 по дате отправления:

Предыдущее
От: "Luiz K. Matsumura"
Дата:
Сообщение: Change database encoding
Следующее
От: sarlav kumar
Дата:
Сообщение: generating dynamic queries using pl/pgsql