sql - 如何将表从转储恢复到数据库?

标签 sql postgresql

我使用 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))
);

最佳答案

您是否在目标数据库中安装了 posgis?如果没有,先安装postgis。

如果你安装了postgis还是有问题,尝试dump一个没有geometry filed的表 并在另一个数据库中恢复它,看看问题是否仍然出现。

关于sql - 如何将表从转储恢复到数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15378761/

相关文章:

mysql - 如何: Sort user by values and theier new position in the table

sql - 如何制作我们想要在 PostgreSQL 中查看的 txt/doc/pdf/html 文件

sql - 更新多行时出现错误 "duplicate key value violates unique constraint"

postgresql - Golden Gate 复制 - Postgres 实例

sql - 执行更新时 SQL 中的行数

sql - 如何在Sql服务器中将十六进制转换为字符串

postgresql - 不明确的函数参数

node.js - 无法在 docker compose 服务之间连接到 Postgres 数据库

php - 使用日期时间的最新记录

sql - 如何按范围选择行?