Nombre de tabla entre parentesis

From: Oswaldo Hernández <listas(at)soft-com(dot)es>
To: "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: Nombre de tabla entre parentesis
Date: 2008-01-14 10:01:14
Message-ID: 478B32EA.9060605@soft-com.es
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hola,

Al desarrolar unas funciones nos hemos dado cuenta de que no esta permitido poner el nombre de una
tabla entre paréntesis:

sc=# select * from (paises) p;
ERROR: syntax error at or near ")" en el carácter 22
LINEA 1: select * from (paises) p;
^
Sin embargo si el contenido del from es un subselect o un join de tablas o hay problema.
Tampoco hay problema en poner entre parentesis nombres de campos.

Me he dado cuenta de esto al desarrollar una función que recibe como parametro un nombre de tabla o
sentencia sql, esta función ejecuta: 'select * from (parametro) p', y claro, si el parametro es un
nombre de vista o tabla salta el error.
No es un problema grave ya se puede solventar comprobando si es una tabla o sentencia sql, sin
embargo me ha llamado la atencion este comprotamiento.

¿Es normal esto? ¿Hay algun motivo especial para que no se permita?

Version Postgres 8.1
Gracias.

--
*****************************************
Oswaldo Hernández
oswaldo (@) soft-com (.) es
*****************************************

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Oswaldo Hernández 2008-01-14 12:07:58 Re: sobre transacciones...
Previous Message Julio Cesar Sánchez González 2008-01-14 01:47:58 Re: Vista en Diagrama MER