postgresql:如果不退出则创建用户[重复]
Posted
技术标签:
【中文标题】postgresql:如果不退出则创建用户[重复]【英文标题】:postgresql: Create user if not exit [duplicate] 【发布时间】:2021-05-05 02:25:18 【问题描述】:如果不退出,有没有办法创建用户。
CREATE USER sup_ WITH PASSWORD 'postgres';
当我执行两次时出现错误说 sup_ 存在。 我应该如何更正我的查询?
谢谢?
【问题讨论】:
这能回答你的问题吗? Create PostgreSQL ROLE (user) if it doesn't exist 【参考方案1】:CREATE ROLE
没有 IF NOT EXISTS
子句。
您可能希望使用 PL/pgSQL 来解决您的问题。看看this question,基本一样,答案很透彻。
【讨论】:
【参考方案2】:首先检查用户是否存在,以免出错。用户以下查询:
Do
$do$
BEGIN
IF NOT EXISTS (SELECT * FROM pg_user WHERE usename = 'sup_')then
CREATE USER sup_ WITH PASSWORD 'postgres';
END IF;
end
$do$
【讨论】:
以上是关于postgresql:如果不退出则创建用户[重复]的主要内容,如果未能解决你的问题,请参考以下文章
markdown 从本地分支推送到另一个远程分支(如果不退出则在远程创建新分支)