相关疑难解决方法(0)

如果不存在,请创建PostgreSQL ROLE(用户)

如何编写一个SQL脚本来在PostgreSQL 9.1中创建一个ROLE,但如果它已经存在则不会引发错误?

当前脚本只有:

CREATE ROLE my_user LOGIN PASSWORD 'my_password';
Run Code Online (Sandbox Code Playgroud)

如果用户已存在,则会失败.我喜欢这样的东西:

IF NOT EXISTS (SELECT * FROM pg_user WHERE username = 'my_user')
BEGIN
    CREATE ROLE my_user LOGIN PASSWORD 'my_password';
END;
Run Code Online (Sandbox Code Playgroud)

...但是这不起作用 - IF在纯SQL中似乎不支持.

我有一个批处理文件,可以创建PostgreSQL 9.1数据库,角色和其他一些东西.它调用psql.exe,传入要运行的SQL脚本的名称.到目前为止,所有这些脚本都是纯SQL,我想尽可能避免使用PL/pgSQL等.

sql postgresql roles dynamic-sql

96
推荐指数
11
解决办法
8万
查看次数

如何在PostgreSQL中创建临时函数?

我必须在数据库中执行循环.这只是一次性要求.执行该函数后,我现在正在删除该函数.

有没有什么好的方法来创建临时/一次性功能?

sql postgresql sql-function

66
推荐指数
3
解决办法
2万
查看次数

标签 统计

postgresql ×2

sql ×2

dynamic-sql ×1

roles ×1

sql-function ×1