0
저는 분명히 포스트그레스에 새로 왔습니다. 9.2 버전을 사용하고 있습니다. 몇 가지 역할, 데이터베이스, 스키마 및 기본 테이블을 작성하는 스크립트를 작성하려고합니다. 나는 pgAdminIII에서 SQL 편집기를 사용하지만이 같은 오류로 계속 실행 시도 :postgres에서 데이터베이스, 스키마, 테이블, 역할 객체를 빠르게 생성하기 위해 단일 파일에 내 ddl을 쓰려면 어떻게해야합니까?
ERROR: CREATE DATABASE cannot be executed from a function or multi-command string
내가이, 포스트 그레스에서이 작업을 수행하는 방법을 간단하게 아니라고 다른 게시물에서 이해하지만 내가 파악하지 않은 것은
: 누군가가 DBS, 스키마, 역할, 테이블의 모음 등를 구축하는 하나의 파일에 자신의 DDL을 구성 할 수있는 방법을 여기에 내가 지금 만들려고 해요 기본 DB 레이아웃 샘플입니다
CREATE ROLE "edus-db-admins-dev"
NOSUPERUSER INHERIT CREATEROLE;
CREATE ROLE "edus-db-admin-dev" LOGIN
PASSWORD 'blahblahblah'
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
GRANT "edus-db-admins-dev" TO "edus-db-admin-dev";
CREATE ROLE "edus-esb-loggers"
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE ROLE "edus-esb-logger" LOGIN
PASSWORD 'blahblahblah'
NOSUPERUSER INHERIT NOCREATEDB NOCREATEROLE NOREPLICATION;
CREATE DATABASE edus
WITH OWNER = "edus-db-admin-dev"
ENCODING = 'UTF8'
TABLESPACE = pg_default
LC_COLLATE = 'English_United States.1252'
LC_CTYPE = 'English_United States.1252'
CONNECTION LIMIT = -1;
CREATE SCHEMA eduspubservice
AUTHORIZATION "edus-db-admin-dev";
CREATE TABLE eduspubservice.logs
(
date date NOT NULL,
level character varying(10),
category character varying(100),
logger character varying(100),
method character varying(100),
message character varying(10000)
)
WITH (
OIDS=FALSE
);
ALTER TABLE eduspubservice.logs
OWNER TO "edus-esb-logger";