可以创建扩展但不能在PostgreSQL中更改

时间:2014-03-20 01:51:33

标签: sql postgresql rdbms postgresql-extensions

扩展程序由用户deploy创建,其中包含:

CREATE EXTENSION ltree;

现在我需要将扩展​​程序移动到另一个模式(仍然作为deploy用户,模式utils也由deploy用户拥有)。所以我这样做:

ALTER EXTENSION ltree SET SCHEMA utils;

失败了:

错误:必须是扩展程序ltree的所有者

所以有2个问题:

  1. 为什么PG允许为deploy用户创建扩展但不允许由同一用户更改?
  2. 如何更改仍为deploy用户的扩展程序架构?
  3. 感谢。

1 个答案:

答案 0 :(得分:0)

扩展必须可重定位才能移动到另一个模式。

最简单的解决方案可能是从模式中删除扩展,然后在新模式中创建它。