我有以下字符串连接:
$string_connection = "host=localhost port=5432 user=postgres password=postgres";
$conn = pg_connect($string_connection );
稍后在我的代码中,我需要选择一个数据库:
pg_connect("dbname=my_database");
但是,我总是有以下错误:
Warning: pg_connect(): Unable to connect to PostgreSQL server: fe_sendauth: no password supplied in ..\class.databases.php on line 142
但是,在 PHP.net 的示例中,他们这样做了。另一个例子:
pg_query($conn,'\connect my_database');
为什么这不起作用?
当我使用 PgAdmin 进行备份时,我得到了以下字符串:
SET statement_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;
DROP DATABASE my_database;
CREATE DATABASE my_database WITH ENCODING = 'UTF8' LC_COLLATE = 'Portuguese_Brazil.1252' LC_CTYPE = 'Portuguese_Brazil.1252';
ALTER DATABASE my_database OWNER TO postgres;
\connect my_database
当我尝试使用 pg_query 运行此脚本时,我遇到了错误:
Warning: pg_query(): Query failed: ERRO: syntax error in "\" LINE 1: \connect my_database ^
我需要选择一个数据库来创建一个模式,然后创建我的表......我不知道如何使用 Postgres 来做到这一点。