Re: Alias de más 63 caracteres

From: Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>
To: Mariano D'Agostino <dagostino(dot)m(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Alias de más 63 caracteres
Date: 2009-12-01 21:02:19
Message-ID: 20091201210219.GC5013@alvh.no-ip.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Mariano D'Agostino escribió:
> Hola a todos:
>
> Quería consultarles por un problema que estamos teniendo en la comunidad de
> Drupal. Sucede que algunos módulos generan un alias para los campos de las
> consultas de SQL de más de 63 caracteres y esto haría que sean recortados
> trayendo algunos problemas como es esperable.
>
> ¿En las ultimas versiones de PostgreSQL esta limitación sigue presente? ¿Hay
> alguna forma de desactivarla? O tal vez alguna función que de un alias único
> para una query...
>
> Para el que quiera saber un poco más sobre estos problemas:
> http://drupal.org/node/371711
> http://drupal.org/node/571548
>
> Por supuesto una respuesta acertada sería "drupal debería recortar los
> alias", y sería 100% válida, sin embargo conocer más sobre este tema no
> viene mal.

Como ya se comentó en ambos bugs, los delimitadores tienen un largo
máximo de NAMEDATALEN - 1. Normalmente NAMEDATALEN es 64, y puedes
cambiarlo recompilando pero es mala idea porque dos BDs con NAMEDATALEN
distintos son incompatibles (==> initdb).

La única solución razonable que le veo al problema es recortar los
identificadores de alguna forma. Yo no intentaría simplemente
truncarlos, sino más bien hacer alguna forma de resumen como por ej.
convertir "node_node_data_field" en "nndf", y si tienes tanto
node_node_data_field como node_node_data_flap (por ejemplo) quizás usar
nndf para uno y nndf1 para el otro para evitar el conflicto obvio.

--
Alvaro Herrera Vendo parcela en Valdivia: http://alvherre.cl/caboblanco
"En el principio del tiempo era el desencanto. Y era la desolación. Y era
grande el escándalo, y el destello de monitores y el crujir de teclas."
("Sean los Pájaros Pulentios", Daniel Correa)

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Alvaro Herrera 2009-12-01 21:03:47 Re: like no me devuelve registros - solucionado
Previous Message Fernando Hevia 2009-12-01 20:33:27 RE: GRANT a varias tablas al mismo tiempo