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 по дате отправления: