RE: Subir plano o tabla

From: "Fernando Hevia" <fhevia(at)ip-tel(dot)com(dot)ar>
To: "'Conrado Blasetti'" <conrado(at)mapfre(dot)com(dot)ar>, <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Subir plano o tabla
Date: 2009-05-20 13:56:48
Message-ID: AE7EC5EE069D4BB5BD7346FB0205E9ED@iptel.com.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

> -----Mensaje original-----
> De: Conrado Blasetti
>
> Gente, buenos días.
>
> Consulta, tengo un archivo plano para subir a una tabla con
> COPY, el plano tiene N columnas pero la tabla como primer
> campo tiene el ID propio de tabla del tipo serial, ej:
>
>
> Tabla
>
> Id serial,
> Campo1,
> Campo2,
> Campo3,
> CampoN
>
> Plano
>
> Campo1,
> Campo2,
> Campo3,
> CampoN
>
> La consulta es, es posible decirle al COPY de alguna manera
> que el primer campo no viene informado en el plano y tiene
> que ir a buscar la sequence?
>
> Si no se puede, no problem, creo una tabla X con la misma
> estructura del plano y luego relleno la final por sql.
>

Es posible.
Primero tenés que setear el default de la columna para que tome el valor de
la secuencia:

ALTER TABLE mi_tabla
ALTER COLUMN columna_serial SET DEFAULT nextval('mi_secuencia');

Luego en el COPY directamente no menciones esa columna.
Al hacer la inserción Postgres le asignará el valor de la secuencia.

Saludos,
Fernando.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Luis A. Zevallos Cárdenas 2009-05-20 14:11:09 Consulta sobre pg_column_size()
Previous Message Oswaldo Hernández 2009-05-20 13:54:29 The database cluster was initialized without HAVE_INT64_TIMESTAMP