Eşanlamlılar anlama

Bir Eşanlamlı aşağıdaki amaçlara hizmet eden bir veritabanı nesnesidir:

  • Yerel veya uzak bir sunucuda bulunabilir temel nesne, denir, başka bir veritabanı nesnesi için bir diğer ad sağlar.

  • Bir istemci uygulaması adını veya konumunu temel nesne yapılan değişiklikleri önler soyutlama katmanı sağlar.

Örneğin, göz önünde Employee tablo , AdventureWorks2008R2 adlı bir sunucuda bulunan örnek veritabanı, Server1.Başka bir sunucudan Bu tablo başvurusu yapmak için Server2, bir istemci uygulaması değeri aygıtınkiyle tam olarak adı kullanın sahip Server1.AdventureWorks.HumanResources.Employee.Ayrıca, yerini tablo olan, örneğin, başka bir sunucuya değiştirmek için istemci uygulaması bu değişikliği yansıtacak şekilde değiştirilmesi gerekir.

Hem bu sorunları çözmek için bir Eşanlamlı oluşturabileceğiniz EmpTable, Server2 için Employee Tablo Server1.Şimdi, istemci uygulaması yalnızca tek parça ad kullanması gereken EmpTablebaşvurmak için Employee tablo.Ayrıca, konumunu Employee tablo değişiklikler, siz vardır eşanlamlı değiştirmek EmpTable, yeni konumunu işaret edecek şekilde Employee tablo.Because there is no ALTER SYNONYM statement, you first have to drop the synonym, EmpTable, and then re-create the synonym with the same name, but point the synonym to the new location ofEmployee.

Bir eş anlamlı bir şemaya ait olduğu ve bir şema diğer nesneler gibi veri türünün eşanlamlısı adı benzersiz olmalıdır.Aşağıdaki veritabanı nesnelerini eş anlamlısını oluşturabilirsiniz:

Derleme (clr)saklı yordam

Derleme (clr) tablo değerli işlev

Derleme (clr) skaler işlev

Derleme (clr) toplu işlevleri

Çoğaltma filtre yordamı

Genişletilmişsaklı yordam

sql skaler işlev

sql tablo değerli işlev

sql satır içi tabled-değerli işlev

SQLsaklı yordam

Görünüm

Tablo1 (kullanıcı tanımlı)

1 Yerel ve genel geçici tablolar içerir

Not

işlev temel nesneler için değeri aygıtınkiyle tam olarak adları desteklenmez.

Bir Eşanlamlı temel nesne için başka bir eş anlamlı olamaz ve veri türünün eşanlamlısı başvuramaz bir kullanıcı tanımlı toplam işlev.

Bir Eşanlamlı temel nesne kendi arasındaki bağlama tarafından yalnızca adıdır.Tüm varlığı, tür ve temel nesne üzerinde denetleme izinleri ertelenmiş gerçekleştirene kadar saat.Bu nedenle, temel nesne değiştirilebilir, düşürülme, veya bırakılan ve özgün temel nesne ile aynı ada sahip başka bir nesne tarafından değiştirildi.Örneğin, bir eş göz önünde MyContacts, bu başvurular Person.Person tablo , Adventure Works.If the Person table is dropped and replaced by a view named Person.Person, MyContacts now references the Person.Person view.

Eşanlamlı başvuru şemaya bağlı değil.Bu nedenle, veri türünün eşanlamlısı tüm silinebilir saat.Ancak, veri türünün eşanlamlısı bırakarak bırakıldı eş sallantıda başvurular bırakarak riskiyle.Bu başvurular yalnızca çalışma zamanında bulunur saat.

Eşanlamlı ve şemalar

Bir varsayılan şema sahibi ve veri türünün eşanlamlısı oluşturmak istediğiniz varsa, size ait olan bir şema adı ile eş adı nitelemeniz gerekir.Örneğin bir şema sahibi, x, ama y sizin varsayılan şema ve EŞANLAMLI oluşturma deyim kullanın, eş şema adı öneki gerekir ise x, eş anlamlı bir tek parça ad. kullanarak adlandırma yerineEşanlamlı oluşturma hakkında daha fazla bilgi için bkz: EŞANLAMLI (Transact-sql) oluştur.

Veri türünün eşanlamlısı üzerinde izinleri verme

Yalnızca eşanlamlı sahipleri, üye db_owner, ya da üyeleri db_ddladmin kullanıcıya izni vermek eş anlamlı.

REDDETMEK, tümünü ya da herhangi bir veri türünün eşanlamlısı aşağıdaki izinleri iptal izni verebilirsiniz:

DENETİM

SİL

YÜRÜTME

EKLE

SEÇİN

SAHİPLİĞİ

GÜNCELLEŞTİRME

GÖRÜNÜM TANIMI