Jaime Casanova escribió:
> 2013/12/18 Gabriel Davini <gabrielfranciscodav...@gmail.com>:

> > with new_int as
> > (select i.id, i.internal_number, format('%s-%s', p.name,
> > lpad(i.internal_number, 13, '0')) as invoice_number
> > from account_invoice i, pos p
> > where i.pos_ar_id=p.id
> > and i.internal_number !~ '^[0-9]{4}-[0-9]{8}$')
> > update account_invoice set internal_number=new_int.invoice_number from
> > new_int where account_invoice.id=new_int.id;

> > ERROR:  syntax error at or near "update"
> > LÍNEA 1: ...d and i.internal_number !~ '^[0-9]{4}-[0-9]{8}$') update acc...

> Hay al menos dos cambios entre 9.1.10 y 9.1.11 que quiza expliquen tu
> problema. Pero me da pereza tratar de reconstruir el caso, quiza si
> pasas las tablas con algunos datos (quiza ni los datos se necesitan)
> para reproducir el probelma

Mi impresión es que el servidor que funciona debe ser 9.1, como él dice,
pero que el que no funciona es 9.0 o anterior.  No le veo otra forma de
arrojar un error de sintaxis justo en el update.

Posiblemente el psql es 9.1 y el servidor es 9.0.  Al menos no están
configurados de la misma forma: psql está conversando en castellano
(dice LÍNEA, no LINE) mientras que el servidor habla inglés (dice
"syntax error" en vez de "error de sintaxis").  Esto no es una pista
dura, por supuesto, pero es levemente sospechoso.

-- 
Álvaro Herrera                http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services

-
Enviado a la lista de correo pgsql-es-ayuda (pgsql-es-ayuda@postgresql.org)
Para cambiar tu suscripción:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a