If table have an inclusion with LIKE what happens to triggers?
Hello,
If I have a small table with common fields
CREATE TABLE common_filelds
(
created_timestamp timestamp,
updated_timestamp timestamp
)
Then I put som triggers on those fields
CREATE OR REPLACE FUNCTION update_modified_timestamp_function() RETURNS
trigger AS
$$
BEGIN
NEW.modified_timestamp := CURRENT_TIMESTAMP;
RETURN NEW;
END;
$$
LANGUAGE plpgsql VOLATILE;
CREATE TRIGGER common_field_update_triger
BEFORE UPDATE ON rscada.common_fields
FOR EACH ROW
EXECUTE PROCEDURE update_modified_timestamp_function();
And then include this in another table
CREATE TABLE venue
(
name varchar default '',
LIKE common_fields
)
The triggers is not executed.
Is there any way to inherit also
the triggers from the common_field table?
Or must I place triggers on all tables?
/Cordially yours
--
gorhas@gmail.com
Göran Hasse
Boo 229
715 91 ODENSBACKEN
Mob: 070-5530148
On Wed, Dec 13, 2017 at 11:21 AM, Göran Hasse <gorhas@gmail.com> wrote:
Is there any way to inherit also
the triggers from the common_field table?
No
Or must I place triggers on all tables?
Yes
The docs cover what is able to be copied and triggers are not mentioned.
https://www.postgresql.org/docs/10/static/sql-createtable.html
Mostly column-related things are copied, not table-related things (e.g.,
table comments, triggers, policies)
I suspect its mostly a lack of need warranting the effort than any
fundamental design reason.
David J.