我试图用PHP创建一个SQL文件来导入我的数据库/模式/表。
如果我使用PgAdmin,它会在CREATE TABLE之后插入一个元命令\ connect 如果我在PHP中使用pg_query运行SQL,则会生成错误。
阅读以下问题后: PostgreSQL: Create schema in specific database 和 Postgres Creating Schema in a specific database
我问: 如何使用SQL命令(非psql命令)在特定数据库中创建新模式? 特定数据库不是默认名为'postgres'的数据库,而是由我创建的另一个数据库。
答案 0 :(得分:2)
简短的回答是,如果您连接到另一个不能使用纯SQL的数据库。
由于事实上在Postgres中没有像use database;
这样的事实,你必须打开与你想要创建架构的特定数据库的连接(例如,用PHP中的pg_connect)。
可以使用您可能知道的CREATE SCHEMA...
sql command创建架构本身。
也许使用pg_dump和pg_restore是您的选择。我还要看一下phpPgAdmin的来源。
我希望这有点帮助。
*斯特