Re: Firing an event trigger for ADD COLUMN?

Поиск
Список
Период
Сортировка
От Alvaro Herrera
Тема Re: Firing an event trigger for ADD COLUMN?
Дата
Msg-id 20200512002305.GA28510@alvherre.pgsql
обсуждение исходный текст
Ответ на Firing an event trigger for ADD COLUMN?  (Michel Pelletier <pelletier.michel@gmail.com>)
Ответы Re: Firing an event trigger for ADD COLUMN?
Re: Firing an event trigger for ADD COLUMN?
Список pgsql-general
On 2020-May-11, Michel Pelletier wrote:

> Is this asymmetry a bug?  I realize these event trigger functions are
> typically written in C, but I'd like to keep this idea contained to a
> plpgsql function and cover as many reversible changes as I can.

Sadly, you cannot obtain all the necessary details using only plpgsql.
The only way is to compile a C extension.  There's a very rough,
incomplete skeleton to show how to do this in
src/test/modules/test_ddl_deparse.  A much more complete approach, which
was not completed, was used to produce JSON output from the C
structures -- see
https://www.postgresql.org/message-id/20150409161419.GC4369@alvh.no-ip.org

Keep in mind ALTER TABLE is a very sophisticated; you can do things like
ALTER TABLE one ADD COLUMN two INT, DROP COLUMN three, ADD COLUMN four text;
(i.e. do several things in one command) so if you were to use a
simplistic approach, you might end up missing things.

-- 
Álvaro Herrera                https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services



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

Предыдущее
От: Tanveer Munavar
Дата:
Сообщение: Re: Firing an event trigger for ADD COLUMN?
Следующее
От: Alvaro Herrera
Дата:
Сообщение: Re: Firing an event trigger for ADD COLUMN?