¿Se utiliza realmente la palabra clave "ALIAS"?


9

De acuerdo con PostgreSQL 7.1 a 9.1 (ahora no compatible), ALIASaparece como una palabra reservada, al menos para SQL-99. Las versiones posteriores no lo muestran, lo que sugiere que se ha eliminado como una palabra reservada. Los documentos antiguos de PostgreSQL dicen "la presencia de una palabra clave no indica la existencia de una característica". Al aliasar una tabla o columna que he visto AS, pero nunca ALIAS.

¿Dónde se ALIASusa (o se utilizó ) la palabra clave SQL ? ¿Alguna vez estuvo en uso o solo se reservó para uso futuro?

Respuestas:


16

PostgreSQL mantiene una lista de términos reservados y no reservados en el apéndice . ALIASestá ausente de esa lista. Puede verificar que PostgreSQL no use ALIASrevisando la gramática de YACC . Incluso desde Postgres95 ALIASno era una palabra reservada (la primera versión en la migración de QUEL a SQL)

SQL estándar

  • En SQL-92, ALIASse marcó como a <reserved word>; pero, no había uso asignado para eso <reserved word>.

  • En SQL-99 ALIASse marcó como "Palabra reservada adicional" y se agregó a la lista de <reserved word>; pero, no había uso asignado para eso <reserved word>. Quizás reservaron el término con la intención de definir el significado más tarde, y luego lo retiraron en un punto diferente. O, tal vez reservaron el término para la implementación definida por el proveedor. PostgreSQL reflejó la reserva de la especificación en los documentos, y luego eliminó esa reserva con la especificación.

  • En SQL-2011, ALIASno hay dónde encontrarlo y la palabra "alias" solo aparece en referencia a 'Característica T053, "Alias ​​explícitos para la referencia de todos los campos"'

ℹ No hay copia digitalizada de SQL-86 o SQL-89


8

Se utiliza al menos en varios tipos de Db2: ALIASes un objeto que le permite especificar un nombre diferente para otro objeto, como la tabla. Con frecuencia se usa para permitir referencias en un esquema a objetos en otro esquema sin especificar explícitamente ese esquema.

create table SOMEOTHERSCHEMA.FOOBAR (...);
set schema MYSCHEMA;
create alias FOOBAR for SOMEOTHERSCHEMA.FOOBAR;
select * from FOOBAR;

ALIASes un alias para SYNONYM; El último concepto también existe en Oracle y SQL Server.


44
ALIASes un alias paraSYNONYM - hmm, supongo que también se podría decir que ALIASes sinónimo de SYNONYM...
Andriy M


3

En realidad, hay un lugar donde la palabra clave ALIASse usa en todas las versiones de PostgreSQL.

Sin embargo, no en SQL, como Evan claramente documentado . Pero en el lenguaje de procedimiento PL / pgSQL para crear alias para parámetros o variables.

Se usaba más comúnmente antes de Postgres 8.0, mientras que los parámetros con nombre aún no eran compatibles con las funciones PL / pgSQL. Desde entonces, solo quedan pocos casos de uso. El manual concluye:

Lo mejor es usarlo solo con el fin de anular nombres predeterminados.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.