繁体   English   中英

使用PHP检查PostgreSQL中是否存在数据库

[英]Check if database exists in postgreSQL using PHP

我想知道是否有人可以告诉我是否可以使用PHP检查postgresql数据库是否存在?

我正在编写一个PHP脚本,并且只希望它创建尚不存在的数据库,但是到目前为止还无法看到如何实现它。

谢谢


我试过了

$cmd = 'psql -U postgres -c "SELECT schema_name FROM information_schema.schemata WHERE schema_name = 'portal';"';
    exec($cmd);

我有

PHP Parse error:  syntax error, unexpected 'portal'

您有语法错误,单引号用于初始化语句。

$cmd = 'psql -U postgres -c "SELECT schema_name FROM information_schema.schemata WHERE schema_name = \'portal\';"';
exec($cmd);

您应该使用PDO而不是exec,但这可能对您有用。

您在混淆schemadatabase 在postgres中,您在mysql中称为数据库。 因此,如果要查找数据库,最好使用pg_databases

$cmd = 'psql -U postgres -c "select \'already_there\' from pg_database where datname = \'db1\';"';
    exec($cmd);

这是PHP错误,您必须转义'\\'portal \\''

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM