Re: problema con pg_dump en campos text con saltos de linea

From: Alvaro Herrera <alvherre(at)commandprompt(dot)com>
To: Alejandro Gasca <agasca(at)yahoo(dot)com>
Cc: ayuda postgres <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Re: problema con pg_dump en campos text con saltos de linea
Date: 2007-03-31 17:06:18
Message-ID: 20070331170618.GC5761@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Alejandro Gasca escribió:

> COPY sencillita (letra, numero) FROM stdin;
> campo\ncon\nenters 1
> \.
>
> [...]
>
> pero al querer volver a subir el dump
> $ psql una_prueba -f ejemplo
> me marca el siguiente error:
> ERROR: missing data for column "numero"
>
> parece ser que el problema son los '\n' que genera el propio pg_dump...

Hmm, quizas algo o alguien esta convirtiendo en \n en un salto de linea
de verdad. Que sistema operativo estas usando? Aca probe tu ejemplo y
funciona sin ningun problema:

12:58 perhan ~ 0$ runpg 82_rel client
Bienvenido a psql 8.2.3, la terminal interactiva de PostgreSQL.

Digite: \copyright para ver los términos de distribución
\h para ayuda de comandos SQL
\? para ayuda de comandos psql
\g o or termine con punto y coma para ejecutar una consulta
\q para salir

alvherre=# create table sencillita (letra text, numero int);
CREATE TABLE
alvherre=# insert into sencillita values ('hoho
alvherre'# foobar', 1);
INSERT 0 1
alvherre=# select * from sencillita ;
letra | numero
--------+--------
hoho | 1
foobar
(1 fila)

alvherre=# \q
01:03 perhan ~ 0$ `runpg 82_rel `
# Args: build, install, init, server, client
# port: 55514
01:03 perhan ~ 0$ pg_dump alvherre -t sencillita
--
-- PostgreSQL database dump
--

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: sencillita; Type: TABLE; Schema: public; Owner: alvherre; Tablespace:
--

CREATE TABLE sencillita (
letra text,
numero integer
);

ALTER TABLE public.sencillita OWNER TO alvherre;

--
-- Data for Name: sencillita; Type: TABLE DATA; Schema: public; Owner: alvherre
--

COPY sencillita (letra, numero) FROM stdin;
hoho\nfoobar 1
\.

--
-- PostgreSQL database dump complete
--

01:03 perhan ~ 0$ pg_dump alvherre -t sencillita > snc.dump
01:03 perhan ~ 0$ psql
Bienvenido a psql 8.2.3, la terminal interactiva de PostgreSQL.

Digite: \copyright para ver los términos de distribución
\h para ayuda de comandos SQL
\? para ayuda de comandos psql
\g o or termine con punto y coma para ejecutar una consulta
\q para salir

alvherre=# drop table sencillita ;
DROP TABLE
alvherre=# \q
01:03 perhan ~ 2$ psql -f snc.dump
SET
SET
SET
SET
SET
SET
SET
SET
CREATE TABLE
ALTER TABLE
01:03 perhan ~ 0$ psql
Bienvenido a psql 8.2.3, la terminal interactiva de PostgreSQL.

Digite: \copyright para ver los términos de distribución
\h para ayuda de comandos SQL
\? para ayuda de comandos psql
\g o or termine con punto y coma para ejecutar una consulta
\q para salir

alvherre=# select * from sencillita
alvherre-# ;
letra | numero
--------+--------
hoho | 1
foobar
(1 fila)

alvherre=#

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2007-03-31 18:03:37 Re: Ayuda con "escape string syntax E'...' "
Previous Message Alvaro Herrera 2007-03-31 16:36:30 Re: ayuda Zeos y postgres II