我在安装PostgreSQL 10的情况下使用Microsoft Azure Database for PostgreSQL。当我尝试与其他用户一起在将来的表上工作时,我想使其他用户也能更改我的表。
我已经创建了角色pgpublish,并且所有用户都是该角色的成员。对于我创建的新表,我将表所有者更改为角色 pgpublish 。现在,每个具有 pgpublish 角色的人都可以更改表:
ALTER TABLE "MYcoolSchema"."CoolNewTable" OWNER TO pgpublish;
为使此操作更加自动/通用,我创建了一个触发器函数,并尝试创建一个事件触发器as explained here。
不幸的是,我无法创建事件触发器(trigger函数正常工作),如下所述:
ERROR: permission denied to create event trigger
"trg_create_set_owner" HINT: Must be superuser to create an event trigger.
SQL state: 42501
是否存在用于PostgreSQL的Microsoft Azure数据库上创建事件触发器的解决方法?看起来怎么样?
我可以在另一个系统上运行cron作业,以扫描新表并将这些新表的所有者更改为pgpublish,但这一点都不酷。