Re: INSERT INTO SELECT con falla x primary key

From: Julio Cesar Sánchez González <knowhow(at)sistemasyconectividad(dot)com(dot)mx>
To: Fernando Dubal <fdubal(at)mercurymobile(dot)com(dot)ar>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: INSERT INTO SELECT con falla x primary key
Date: 2007-04-13 19:32:48
Message-ID: 1176492768.6230.1.camel@scoserver
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El jue, 12-04-2007 a las 14:44 -0300, Fernando Dubal escribió:
> Hola, tengo una tabla con 85.000.000 registros.
>
> ya como si eso solo no fuese un problema, quiero agregar una PRIMARY
> KEY, por 3 campos, los caules no son unicos.

Un primary key siempre debe de ser unico, esa es la regla.

>
> el problema q esta tabla tienen muchos insert constantes debido a un
> sistema q corre constantemente.
>
> asi q habia pensado renombrar la tabla y hacer una nueva tabla para q
> los insert caigan en la tabla nueva y mientras insertar los registros
> de la tabla renombrada en la tabla nueva, ignorando los registros q se
> repiten los tres campos x los cuales quiero poner la PRIMARY KEY.
>
> debido a q el postgres no tiene INSERT IGNORE INTO, se me habia
> ocurrido hacerlo con una funcion, q chequee si el registro ya esta,
> pero tengo miedo de aumentar mucho mas la exigencia de la DB.
>
> otra q se me habia ocurrido era con un
> INSERT INTO tabla (SELECT * FROM tabla_renombrada GROUP BY "los 3
> campos x los q quiero hacer la primera key");
>
> pero el postgres tampoco me deja poner en el "SELECT" campos q esten
> fuera del GROUP BY.
>
> alguien tiene alguna idea? o alguna otra opcion?
>
> saludos.
>
> Fernando Dubal
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Gerardo Cavallini 2007-04-13 19:33:30 Re: Instalacion de Postgres
Previous Message Leonel 2007-04-13 19:30:28 Re: extraer base de datos