Eşanlamlı (veritabanı altyapısı) kullanma

Eşanlamlı birkaç sql deyimleri ve ifade içerikleri kendilerine başvurulan temel nesne yerine kullanabilirsiniz.Aşağıdaki tablo bu ifadeleri ve ifade ortamlarý listesini içerir:

SEÇİN

EKLE

GÜNCELLEŞTİRME

SİL

YÜRÜTME

Sub-selects

Yukarıda belirtildiği bağlamlarda eşanlamlı ile çalışırken, temel nesne etkilenir.Örneğin, bir tablo olan bir temel nesne veri türünün eşanlamlısı başvurur ve eş bir satır ekleme, aslında başvurulan tabloya bir satır ekliyorsunuz.

Not

bağlantılı sunucu üzerinde bulunan bir Eşanlamlı başvuru yapamazsınız.

Veri türünün eşanlamlısı OBJECT_ID işlev için parametre olarak kullanabilirsiniz; Ancak, işlev eşanlamlı temel nesne nesne kimliği döndürür.

ddl deyim içinde bir Eşanlamlı başvuru yapamazsınız.Adlı bir Eşanlamlı başvuran Örneğin, aşağıdaki ifadeler, dbo.MyProduct, hatalara neden:

ALTER TABLE dbo.MyProduct
   ADD NewFlag int null;
EXEC ('ALTER TABLE dbo.MyProduct
   ADD NewFlag int null');

Aşağıdaki izni deyimleri yalnızca eşanlamlı ve temel nesne ile ilişkili:

GRANT

İZİN VERME

İPTAL ETME

 

Eşanlamlıları şemaya bağlı değildir ve bu nedenle, aşağıdaki ifade şemaya bağlı bağlamları tarafından başvurulamaz:

DENETLEME kısıtlamaları

Hesaplanan sütunlar

Varsayılan ifadeler

Kural ifadeler

Şemaya bağlı görünümler

Şemaya bağlı işlevleri

Şemaya bağlı işlevleri hakkında daha fazla bilgi için bkz: Kullanıcı tanımlı işlevler (veritabanı altyapısı) oluşturma.

Örnekler

Aşağıdaki örnek, sonraki örneklerde kullanılacak veri türünün eşanlamlısı oluşturur.

USE tempdb;
GO
CREATE SYNONYM MyAddressType
FOR AdventureWorks2008R2.Person.AddressType;
GO

Aşağıdaki örnek bir satıra ekler temel tablo tarafından başvurulan MyAddressType eş anlamlı.

USE tempdb;
GO
INSERT INTO MyAddressType (Name)
VALUES ('Test');
GO

Aşağıdaki örnek, nasıl veri türünün eşanlamlısı dinamik SQL'de başvurulabilir gösterir.

USE tempdb;
GO
EXECUTE ('SELECT Name FROM MyAddressType');
GO