From: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
---|---|
To: | Yoel Mc Lennan <listas(at)yoel(dot)com(dot)ar> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Ejecutar un conjunto de scripts sin detenerse en un error... |
Date: | 2009-08-11 15:27:17 |
Message-ID: | 20090811152717.GB16362@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Yoel Mc Lennan escribió:
> Buenas, una consulta espero que simple :)
>
> Quiero ejecutar un conjunto de ordenes en un solo paso y que a pesar de encontrar algun error se pueda continuar con el siguiente script.
>
> Por ejemplo , en el siguinte conjunto, puede que ya posea un registro con el ID 2, pero quiero que continue con el siguiente (id 3)
>
> es posible eso ?
> actualment el scrips se corta en el primer error que encuntra.
>
> INSERT INTO "public"."cliente" ("id_cliente", "razon_social", "domicilio", "id_pais", "id_ciudad", "localidad")
> VALUES (0, 'No Seleccionado', NULL, NULL, NULL, NULL);
>
> INSERT INTO "public"."cliente" ("id_cliente", "razon_social", "domicilio", "id_pais", "id_ciudad", "localidad")
> VALUES (1, 'Juan Perez', '-', 23, 3443, 'Capital Federal');
>
> INSERT INTO "public"."cliente" ("id_cliente", "razon_social", "domicilio", "id_pais", "id_ciudad", "localidad")
> VALUES (2, 'Juan Gomez', '-', 23, 3443, 'San Justo');
Lo más fácil es que omitas la columna id_cliente del INSERT y el valor
de VALUES, y uses una secuencia que previamente has hecho setval() al
valor actual más alto existente en la tabla.
--
Alvaro Herrera Developer, http://www.PostgreSQL.org/
"Hay quien adquiere la mala costumbre de ser infeliz" (M. A. Evans)
From | Date | Subject | |
---|---|---|---|
Next Message | Edwin Quijada | 2009-08-11 16:46:25 | RE: funcion... |
Previous Message | Alvaro Herrera | 2009-08-11 15:25:47 | Re: funcion... |