3

pg_dump を使用してテーブル ダンプを作成します。

pg_dump -h server1 -U postgres -t np_points gisurfo > D:\np_point.sql

私がpsqlに入って言った後:

-f D:\np_point.sql

ただし、標準の PostgreSQL テーブルのリストを取得します。

次に、pgAdmin で np_point.sql を実行しようとすると、エラーが発生します。

ERROR:  Syntax error (near: "1")
LINE 78: 1 Сухово 75244822005 75644000 Челябинская обл. Нязепетровски...

エラーが発生するこのSQLのスニペット:

COPY np_point (gid, full_name, okato, oktmo, obl_name, region_nam, the_geom) FROM stdin;
1   Сухово  75244822005 75644000    Челябинская обл.    Нязепетровский район    0101000020E6100000312A7936BD9F4D402A3C580DE9FF4B40

SQLファイルからテーブルを復元するにはどうすればよいですか?

アップデート

PostgreSQL 8.4

そしてSQLファイルの最初の部分。

PostgreSQL database dump

SET statement_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = off;
SET check_function_bodies = false;
SET client_min_messages = warning;
SET escape_string_warning = off;

SET search_path = public, pg_catalog;

SET default_tablespace = '';

SET default_with_oids = false;

--
-- Name: np_point; Type: TABLE; Schema: public; Owner: postgres; Tablespace: 
 --

CREATE TABLE np_point (
gid integer NOT NULL,
full_name character varying(254),
okato character varying(254),
oktmo character varying(254),
obl_name character varying(254),
region_nam character varying(254),
the_geom geometry,
CONSTRAINT enforce_dims_the_geom CHECK ((st_ndims(the_geom) = 2)),
CONSTRAINT enforce_geotype_the_geom CHECK (((geometrytype(the_geom) = 'POINT'::text) OR (the_geom IS NULL))),
CONSTRAINT enforce_srid_the_geom CHECK ((st_srid(the_geom) = 4326))
);
4

1 に答える 1

1

宛先データベースに posgis をインストールしましたか? そうでない場合は、最初に postgis をインストールしてください。</p>

postgis をインストールしても問題が解決しない場合は、ジオメトリ ファイルなしでテーブルをダンプし、別のデータベースに復元してみて、問題がまだ発生するかどうかを確認してください。

于 2013-03-13T07:42:05.213 に答える