database - 创建数据库postgresql出错

标签 database postgresql

是否有任何方法可以检查数据库是否已经存在于 PostgreSQL 中?

我是 PostgreSQL 的新手。 并且还需要通过 jdbc 驱动程序从我的 java 应用程序中检查它。

最佳答案

在 PostgreSQL 中 CREATE DATABASE 没有 IF NOT EXISTS 选项。参见 CREATE DATABASE .

您可以检查 pg_database 以查看数据库是否存在,只有在不存在时才尝试创建它。

您需要通过 dblink 执行此操作,由于 Frank 在评论中指出的限制:

regress=> SELECT create_database_if_not_exists('test');
ERROR:  CREATE DATABASE cannot be executed from a function or multi-command string
CONTEXT:  SQL statement "CREATE DATABASE test"
PL/pgSQL function create_database_if_not_exists(text) line 6 at EXECUTE statement

关于database - 创建数据库postgresql出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13396627/

相关文章:

Python - 如何摆脱 sql 查询执行中的转义序列

mysql - mysql中与where条件一起使用优化group by

api - postgres 中的 OAuth 2.0 授权性能

mysql - 创建具有特定键长度的索引的启发式方法?

SQL 删除触发器不工作

php - 如何在 HTML 水平表中显示 mysql 查询输出

postgresql - pgbouncer kill 命令阻止后续连接

sql - GROUP BY 列相等或为 NULL 的连续行

javascript - Sequelize 实例方法不起作用?

mysql - 将 XML 数据导入数据库