我试图在 postgres 中创建一个表,但它最终出现在错误的数据库中。
这就是我所做的:首先在我的 sql 脚本中创建一个用户和一个数据库,然后创建一个表。代码会解释更多:
drop database if exists sinfonifry;
drop role if exists sinfonifry;
-- create the requested sinfonifry user
create user sinfonifry createdb createuser password 'some_password';
-- create a sinfonifry database
create database sinfonifry owner sinfonifry;
DROP TABLE if exists sinf01_host;
CREATE TABLE sinf01_host
(
host_id bigserial NOT NULL, -- The primary key
host_ip inet NOT NULL, -- The IP of the host
host_name character varying(255) NOT NULL, -- The name of the host
CONSTRAINT "PK_host" PRIMARY KEY (host_id )
)
WITH (
OIDS=FALSE
);
ALTER TABLE sinf01_host OWNER TO sinfonifry;
现在,这是自动化脚本的一部分,并从命令行执行,例如:
sudo -u postgres psql < create_db.sql
我已经在系统上创建了 postgres 用户。
问题来了:该表最终出现在 postgres 数据库的公共模式中,而不是在 sinfonifry 数据库的公共模式中。
如何在数据库中创建我想要的表?
谢谢,干杯,f。
创建数据库命令后发出连接:
create database sinfonifry owner sinfonifry;
\connect sinfonifry
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)