Re: Inserting a record data type into a table

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Inserting a record data type into a table
Дата
Msg-id 29725.1113230737@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Inserting a record data type into a table  (Graeme Hinchliffe <graeme.hinchliffe@zeninternet.co.uk>)
Список pgsql-general
Graeme Hinchliffe <graeme.hinchliffe@zeninternet.co.uk> writes:
> what I would like to be able to do is simply
> INSERT INTO newtable VALUES (NEW);

In 8.0 it works to spell it "new.*".

regression=# create table z1 (f1 int, f2 text);
CREATE TABLE
regression=# create table z2 (f1 int, f2 text);
CREATE TABLE
regression=# create function z1t() returns trigger as $$
regression$# begin
regression$#   insert into z2 values(new.*);
regression$#   return new;
regression$# end$$ language plpgsql;
CREATE FUNCTION
regression=# create trigger z1t  before insert on z1 for each row
regression-# execute procedure z1t();
CREATE TRIGGER
regression=# insert into z1 values (42, 'foo');
INSERT 0 1
regression=# select * from z2;
 f1 | f2
----+-----
 42 | foo
(1 row)

regression=#

            regards, tom lane

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Time and date functions give me headaches!!
Следующее
От: David Fetter
Дата:
Сообщение: Re: What are the consequences of a bad database design