“ALIAS” anahtar kelimesi gerçekten kullanılıyor mu?


9

PostgreSQL 7.1'e göre 9.1 (şimdi desteklenmiyor) ALIAS, en azından SQL-99 için ayrılmış bir kelime olarak listelenmiştir. Daha sonraki sürümler bunu göstermez - ayrılmış bir kelime olarak bırakıldığını gösterir. Eski PostgreSQL belgeleri "anahtar kelimenin varlığı bir özelliğin varlığını göstermez" der . Bir tabloyu veya sütunu yumuşatırken gördüm AS, ama asla ALIAS.

SQL anahtar sözcüğü nerede kullanılır (veya ALIASkullanılır)? Hiç kullanımda mıydı, yoksa yalnızca gelecekte kullanım için mi ayrılmıştı?

Yanıtlar:


16

PostgreSQL , ekte saklı ve saklı olmayan terimlerin bir listesini tutar . ALIASbu listede yok. YACC dilbilgisiniALIAS kontrol ederek PostgreSQL'in kullanmadığını doğrulayabilirsiniz . Postgres95'e kadar ayrılmış bir kelime bile değildi (QUEL'den SQL'e geçişin ilk sürümü)ALIAS

SQL Standardı

  • SQL-92 içinde, ALIASbir olarak işaretlenmiş <reserved word>; ancak bunun için bir kullanım yoktu <reserved word>.

  • SQL-99 ALIASbir "Ek Ayrılmış Word" olarak işaretlenmiş ve <reserved word>; ancak bunun için bir kullanım yoktu <reserved word>. Belki de daha sonra anlamı tanımlamak amacıyla terimi sakladılar ve sonra farklı bir noktada geri çekildiler. Ya da belki de satıcı tarafından tanımlanan uygulama terimini sakladılar. PostgreSQL, spesifikasyonun dokümanlardaki rezervasyonunu yansıttı ve daha sonra bu rezervasyonu spesifikasyonla birlikte kaldırdı.

  • SQL-2011'de, ALIASbulunacak yer yoktur ve "takma ad" kelimesi yalnızca "Özellik T053," Tüm alanların referansı için açık takma adlar "a referansla görünür.

SQL-86 veya SQL-89'un sayısallaştırılmış bir kopyası yok


8

En azından Db2'nin çeşitli tatlarında kullanılır: ALIAStablo gibi başka bir nesne için farklı bir ad belirtmenize izin veren bir nesnedir. Bu şemayı açıkça belirtmeden bir şemadaki başka bir şemadaki nesnelere başvurulara izin vermek için sıklıkla kullanılır.

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

ALIASiçin bir takma addır SYNONYM; ikinci kavram Oracle ve SQL Server'da da mevcuttur.


4
ALIASiçin bir takma adSYNONYM - hmm, ben de söyleyebiliriz sanırım ALIASbir eşanlamlı olduğunu SYNONYM...
Andriy M


3

Aslında, anahtar kelimenin ALIASPostgreSQL'in tüm sürümlerinde kullanıldığı bir yer vardır .

SQL'de değil, Evan gibi açıkça belgelediği gibi . Ancak prosedürel dilde PL / pgSQL ile parametreler veya değişkenler için takma adlar oluşturun.

Postgres 8.0'dan önce daha yaygın olarak kullanılırken adlandırılmış parametreler henüz PL / pgSQL işlevleri için desteklenmemiştir. O zamandan beri sadece birkaç kullanım durumu kaldı. Kılavuz şu sonuca varıyor:

Sadece önceden belirlenmiş isimleri geçersiz kılmak için kullanmak en iyisidir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.