2012-06-19 4 views
3

저는 PostgreSQL 세계에 완전히 새로운 것이므로 나와 함께하십시오.제공된 .sql 파일에서 PostgreSQL DB를 다시 만들 수 없습니다.

PGSQL 서버에서 Navicat을 통해 내보내는 것처럼 보이는 .sql 파일 (여기에는 전체 파일 :)이 제공되었습니다. 파일 시작 (누구나 시도해 볼 수 있도록 파일이 여기에 있음).

/* 
Navicat PGSQL Data Transfer 

Source Server   : pluto 
Source Server Version : 80311 
Source Host   : localhost:5432 
Source Database  : kun3 
Source Schema   : public 

Target Server Type : PGSQL 
Target Server Version : 90100 
File Encoding   : 65001 

Date: 2012-06-07 11:24:41 
*/ 

제 문제는 제공된 파일에 포함 된 쿼리에서 원래 데이터베이스를 다시 만들 수 없다는 것입니다. 필자는 pgAdmin III, Navicat PGSQL 및 phpPgAdmin에서 SQL 명령을 사용해 보았지만 성공하지 못했습니다. 나는 보통 실수 수백 결국, 첫 번째 중 하나입니다 (먼저 SQL 파일의)

CREATE TABLE "core_log_log" (
"id_log" int4 DEFAULT nextval('core_log_log_id_log_seq'::regclass) NOT NULL, 
"message_log" text, 
"priority_log" int2, 
"date_creation_log" timestamp(6) DEFAULT NULL::timestamp without time zone, 
"server_log" char(255) DEFAULT NULL::bpchar, 
"idusr_log" int4, 
"exception_log" text, 
"idvis_log" int4 
) 
WITH (OIDS=TRUE) 

; 

이 쿼리의 결과 어떤 도움이 높게 평가 될 것입니다

SQL error: 
ERROR: relation "core_log_log_id_log_seq" does not exist 

.도움이 될 것이다 그것은이 다른 방법을 가져 오려고 - 사람이 바로파일이 손상되거나 불완전 같은 것을 가지고 올 것 하더라도, 새로운 하나또는당신이 완전히 거짓 말을 타고하는 적절한 받으려는 무리.

고마워요.

답변

1

처럼 아무것도 존재하지 않는 경우 : 거기에

CREATE SEQUENCE core_log_log_id_log_seq ... 

이 시퀀스를 참조하기 전에, 나는 그것이 불완전이라고 생각합니다.

+0

동의 함. 그것은 불완전합니다. –

+0

다시 한번 감사드립니다. 이제 학습 시퀀스를 시작하기 전에 편집하지 않고 원본 데이터베이스를 다시 만들 수있는 완전한 데이터베이스 덤프 (SQL 파일)를 얻을 수있는 방법이 있습니까? 나는 이것이 원래의 SQL을 처리하는 솔루션과 직접적으로 관련이 없으므로 오해의 소지가 있음을 알고 있지만, 제공된 SQL 파일을 수정하기 전에 공급자에게 다른 버전을 요청하는 것이 좋습니다. 그것의. PGSQL db를 가져 오기위한 가장 안전한 방법은 무엇입니까? – ddhh

+0

Navicat에서 전체 내보내기를 허용한다고 가정합니다. 필자는 테이블과 데이터를 다시 빌드하는 대신 전체 데이터베이스를 "정말로"정말로 다시 만들고 싶지 않을 수도 있기 때문에 시퀀스를 내보내라고해야 할 필요가 있다고 상상해보십시오. 나는 그것이 수출 과정의 어딘가 에서뿐만 아니라 서열을 수출하는 선택 일 것이라고 생각할 것이다. 죄송합니다, Navicat 사용자가 아닙니다! 행운을 빌어 요! –

관련 문제