consulta excepciones con copy se pueden controlar? aqui el caso

From: Jose Mercedes Venegas Acevedo <jvenegasperu(at)gmail(dot)com>
To: Ayuda <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: consulta excepciones con copy se pueden controlar? aqui el caso
Date: 2012-09-13 15:16:09
Message-ID: CA+KjtGdLNn3-3SzH0vrgcATwqURm3ZG4q_SG=XBLwObwi8uTRA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

buen dia tengo este serio problema

tengo un archivo de texto que cargo a una tabla con copy con

copy tf_aux (the_geom) from 'D:/Compartido/arena lotes2.txt' with delimiter
as '|'

aqui algunas lineas de lo que envio

SRID=32717;POLYGON((532525.78346574 9409648.23476958,532531.39331141
9409671.00387433,532553.12927205 9409648.29762166,532545.67108526
9409636.57328779,532524.21653656 9409641.87495566,532525.78346574
9409648.23476958))
*SRID=32717;POLYGON((532485.62875198 9409610.76749403,532472.26944736
9409613.79690108,532485.62875198 9409610.76749403)) (1)*
*SRID=32717;POLYGON((532517.48446853 9409648.368074,532524.31294602
9409672.78107043,532531.39331141 9409671.00387433,532525.78346574
9409648.23476958,532518.73437504 9409648.34799705,532517.48446853
9409648.368074,532517.48446853 9409648.368074,523)) (2)*

esto es para cargar un campo de tipo geometry con postgis bueno el hecho es
que son miles de lineas pero no todas salen bien de autocad asi que tengo
estos dos casos

(1) el numero de puntos no es suficiente postgres me devuelve este error
ERROR: geometry requires more points
HINT: "...08,532485.62875198 9409610.76749403))" <-- parse error at
position 120 within geometry
CONTEXT: COPY tf_aux, línea 3573, columna the_geom:
«SRID=32717;POLYGON((532485.62875198 9409610.76749403,532472.26944736
9409613.79690108,532485.6287519...»

lo que hago es buscar manualmente en el archivo de texto y eliminar esa
linea para que pase

(2) el ultimo punto esta mal escrito postgre devuelve
ERROR: parse error - invalid geometry
HINT: "...4,532517.48446853 9409648.368074,523)" <-- parse error at
position 249 within geometry
CONTEXT: COPY tf_aux, línea 3571, columna the_geom:
«SRID=32717;POLYGON((532517.48446853 9409648.368074,532524.31294602
9409672.78107043,532531.39331141 ...»

aqui igual busco la linea y la elimino para que pase

*ahora supongo que ambas excepciones tienen algun codigo de error como
puedo saber cual es el codigo de ese error?

y segundo se puede capturar esa excepcion y con el codigo en caso de que
ocurra saltar y que siga ejecutando el copy? con las demas lineas?
*
alguien tendra un ejemplo para lograr tengo que pasarme a veces una mañana
entera limpiando las lineas para que pasen en el copy.

espero puedan ayudarme

saludos

--
José Mercedes Venegas Acevedo
cel: Mov. 949808846

mails: jvenegasperu(at)php(dot)net
jvenegasperu(at)gmail(dot)com

PHP Spanish Docs translator member.
http://www.php.net/manual/es/index.php

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2012-09-13 15:19:44 Re: consulta excepciones con copy se pueden controlar? aqui el caso
Previous Message Jorge Medina 2012-09-13 12:36:28 Re: Uso system de CPU