使用psql在特定模式中创建表?

时间:2018-04-20 19:16:26

标签: postgresql batch-file psql

我有一个允许我创建数据库psql并稍后创建表的批处理。

psql -f "%cd%\db.sql" postgres
echo database creted !
pause
psql -f "%cd%\db_table.sql" mabase postgres
echo   tables creted !

db.sql文件:

CREATE DATABASE mabase;

这是db_table.sql文件:

create table myTable(
   idTable               INT4                 not null,
   nom                  VARCHAR(254)         null,
   date           DATE                 null,
   constraint PK_idTable primary key (idTable)
);

此批处理作为魅力运行,并创建数据库和表。

我的问题是该表是在公共默认架构中创建的。我想要做的是首先创建一个模式,我可以在我的批处理中再添一行:

psql -f "%cd%\schema.sql" mabase postgres

schema.sql文件:

CREATE SCHEMA mabase_schema;

现在的问题是在新架构中而不是在公共架构中创建表。

我尝试了这一行:

psql -f "%cd%\db_table.sql" mabase_schema.mabase postgres

但没有成功!

我如何在批处理文件中定义架构?

0 个答案:

没有答案