[英]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,但这可能对您有用。
您在混淆schema
和database
。 在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.