Re: [pgsql-es-fomento] ejecucion de sentencias update de manera mas veloz

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Jose Mercedes Venegas Acevedo <jvenegasperu(at)gmail(dot)com>
Cc: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>, arpug <arpug(at)postgresql(dot)org>
Subject: Re: [pgsql-es-fomento] ejecucion de sentencias update de manera mas veloz
Date: 2012-06-25 15:54:07
Message-ID: 1340639554-sup-4565@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: arpug pgsql-es-ayuda pgsql-es-fomento


Excerpts from Jose Mercedes Venegas Acevedo's message of lun jun 25 11:37:56 -0400 2012:
> Buen dia a todos
>
> tengo una base de datos postgis que tienen la lotizacion de un poblado pues
> resulta que cada fila de los lotes tiene el nombre del cliente pero no su
> codigo para otras consultas administrativas que tenemos
> en otro sistema alfanumerico
> asi que exporte la lista de nombres y codigos del sistema transaccional en
> oracle para insertarle ese codigo a postgres usando excel para armar la
> consulta.
>
> las consultas que genero en excel quedan asi:
>
> UPDATE CAT_LOTE SET ID= '13010400060' WHERE NOM_CLI = 'HOSTAL CABALLITO
> TOTORA' AND ID LIKE '99%';
> UPDATE CAT_LOTE SET ID= '13010400070' WHERE NOM_CLI = 'ARCILA GONZALES
> MARGOT IVONE' AND ID LIKE '99%';
> UPDATE CAT_LOTE SET ID= '13010400080' WHERE NOM_CLI = 'LESCANO ALVA CARLOS
> FORTUNATO' AND ID LIKE '99%';
> UPDATE CAT_LOTE SET ID= '13010400090' WHERE NOM_CLI = 'ARCILLA CACERES
> MICAELA' AND ID LIKE '99%';
> UPDATE CAT_LOTE SET ID= '13010400100' WHERE NOM_CLI = 'ARCILLA JURADO
> ALBERTO' AND ID LIKE '99%';
>
> y asi hasta 200 mil
>
> estas las pego en el pgadmin pero en bloques de 10000 porque si le pongo
> mas se cuelga y demora una hora mas o menos en ejecutar esa actualizacion.
>
> estoy usando postgres 9.1 sobre windows server 2003
>
> alguna otra forma de hacer esto mas rapido usando el psql por consola no se
> alguna otra forma como seria?

Yo sugerería borrar todos los índices de la tabla, luego hacer los
updates, luego hacer vacuum, luego re-crear los índices.

Nota: la lista de fomento no es para consultas técnicas. No la pongas
en CC. La lista ARPUG tampoco me parece apropiada pero no desconozco.

--
Álvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>

In response to

Responses

Browse arpug by date

  From Date Subject
Next Message Alejandro Carrillo 2012-06-25 16:17:42 Re: [pgsql-es-fomento] ejecucion de sentencias update de manera mas veloz
Previous Message Jose Mercedes Venegas Acevedo 2012-06-25 15:37:56 ejecucion de sentencias update de manera mas veloz

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alejandro Carrillo 2012-06-25 16:17:42 Re: [pgsql-es-fomento] ejecucion de sentencias update de manera mas veloz
Previous Message Jose Mercedes Venegas Acevedo 2012-06-25 15:37:56 ejecucion de sentencias update de manera mas veloz

Browse pgsql-es-fomento by date

  From Date Subject
Next Message Alejandro Carrillo 2012-06-25 16:17:42 Re: [pgsql-es-fomento] ejecucion de sentencias update de manera mas veloz
Previous Message Jose Mercedes Venegas Acevedo 2012-06-25 15:37:56 ejecucion de sentencias update de manera mas veloz