possible enhancing of UPDATE syntax?

Поиск
Список
Период
Сортировка
От Pavel Stehule
Тема possible enhancing of UPDATE syntax?
Дата
Msg-id CAFj8pRDy9ALQ+fwUYXAkqEeqNRWqQs_1fV1y6QUL-VEi-JK_zA@mail.gmail.com
обсуждение исходный текст
Список pgsql-hackers
Hello

we support syntax for INSERT and DELETE statements, that allows a simple triggers for these statements.

CREATE FUNCTION trg_insert()
RETURNS trigger AS $$
BEGIN
  INSERT INTO target_tbl VALUES(NEW.*)
  RETURN NULL;
END;
$$ LANGUAGE plpgsql;

* is not allowed in DELETE, but we can use a virtual column

CREATE FUNCTION trg_delete()
RETURNS trigger AS $$
BEGIN
  DELETE FROM target_tbl WHERE target_tbl = OLD;
  RETURN NULL;
END;
$$ LANGUAGE plpgsql;

Same functionality is missing for UPDATE, although we support (targetlist) = (ROW) syntax

So should be nice and consistent with previous behave

UPDATE target_tbl SET (target_tbl.*) = (NEW) WHERE target_tbl = OLD;

What do you think about it?

Regards

Pavel

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

Предыдущее
От: Andres Freund
Дата:
Сообщение: Re: StrategyGetBuffer optimization, take 2
Следующее
От: amulsul
Дата:
Сообщение: Re: undefined symbol: PQescapeLiteral