扩展由用户 deploy
创建:
CREATE EXTENSION ltree;
现在我需要将扩展移动到另一个模式(仍然作为 deploy
用户,模式 utils
也由 deploy
用户拥有)。所以我这样做:
ALTER EXTENSION ltree SET SCHEMA utils;
失败:
错误:必须是扩展 ltree 的所有者
所以 2 个问题:
- 为什么 PG 允许为
deploy
用户创建扩展,但不允许同一用户更改它? - 如何更改仍然是
deploy
用户的扩展架构?
谢谢。
最佳答案
扩展必须是可重定位的才能移动到另一个模式。
最简单的解决方案可能是从您的架构中删除扩展,然后在新架构中创建它。
关于sql - 可以创建扩展但不能在 PostgreSQL 中更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22521889/