Re: "OLD." || myColumnNameVar (How to generically access columns in a trigger's OLD or NEW records)

Поиск
Список
Период
Сортировка
От ivan_14_32
Тема Re: "OLD." || myColumnNameVar (How to generically access columns in a trigger's OLD or NEW records)
Дата
Msg-id 4E553CE8.5080506@mail.ru
обсуждение исходный текст
Ответ на Re: "OLD." || myColumnNameVar (How to generically access columns in a trigger's OLD or NEW records)  (Basil Bourque <basil.list@me.com>)
Ответы Re: "OLD." || myColumnNameVar (How to generically access columns in a trigger's OLD or NEW records)
Список pgsql-general
01.05.2011 12:58, Basil Bourque wrote:
> Hoorah! I was able to complete my single PL/pgSQL function to create history records tracking individual field value
changesgenerically for all my tables. Some developers call this an "audit trail", though an accountant might say
otherwise.
>
I made auditing based on triggers like aforementioned. And now I need
fill audit table with already presented data. But there is a problem.

within trigger
EXECUTE 'SELECT ($1)."name"::text' INTO newVal USING NEW;
works fine

but function (table "decor" has field "name")
CREATE OR REPLACE FUNCTION "odb_InitLog"()
   RETURNS void AS
DECLARE
   obj record;
BEGIN
   FOR obj IN (SELECT * FROM "decor") LOOP
     EXECUTE 'SELECT ($1)."name"::text' INTO newVal USING obj;
   END LOOP;
END;
doesn't work - ERROR: could not identify column "name" in record data type

Why?






В списке pgsql-general по дате отправления:

Предыдущее
От: John R Pierce
Дата:
Сообщение: Re: postgresql server crash on windows 7 when using plpython
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Feature Request: DDL + RegExp - definitions