我需要编写一个 SQL 脚本,可以在我刚创建的数据库中同时创建一个新的数据库和一个新模式。如何实现呢?是否可以将当前数据库更改为新创建的数据库?或者是否可以指定 CREATE SCHEMA 所用的数据库?我正在使用 PostgreSQL 9.0。
你可以连接到数据库,并执行“CREATE SCHEMA”语句。这样应该会在该数据库中创建一个新模式。这并不像你想象的那么难 ;) 当你想要从.SQL文件中执行此操作时,可以使用如下所示的\connect命令:
CREATE DATABASE foo;
\connect foo;
CREATE SCHEMA yourschema;
使用新用户登录New-Database:
postgres=> \connect newdb user1
...
You are now connected to database "newdb" as user "user1".
newdb=>
在newdb中创建新用户"user1"的模式:
newdb=> CREATE SCHEMA s1;
SELECT * from information_schema.schemata;
使用以下命令创建数据库 --CREATE DATABASE test;
使用以下命令进入test数据库 --psql -d test;
在test数据库中创建模式 --create schema if not exists test_schema;
pg_dumpall
命令并查看它是如何实现的。或者使用 \connect 命令。两种方法都可以。 - Seth Robertson\connect
是一个仅限于psql
的命令。如果在其他客户端(例如 pgAdmin3)中尝试执行包含此命令的 SQL 脚本,则无法正常工作。 - Milen A. Radevpsql
标签。 - Milen A. Radev