Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Was ist die Verwendung von SYNONYM?

In einigen Unternehmenssystemen müssen Sie möglicherweise mit entfernten Objekten umgehen, über die Sie keine Kontrolle haben. Beispielsweise eine Datenbank, die von einer anderen Abteilung oder einem anderen Team verwaltet wird.

Synonyme können Ihnen dabei helfen, den Namen und Speicherort des zugrunde liegenden Objekts von Ihrem SQL-Code zu entkoppeln. Auf diese Weise können Sie gegen eine Synonymtabelle codieren, selbst wenn die gewünschte Tabelle auf einen neuen Server/eine neue Datenbank verschoben oder umbenannt wird.

Ich könnte zum Beispiel eine Abfrage wie diese schreiben:

insert into MyTable
(...)
select ... 
from remoteServer.remoteDatabase.dbo.Employee

aber wenn sich der Server oder die Datenbank, das Schema oder die Tabelle ändert, würde dies Auswirkungen auf meinen Code haben. Stattdessen kann ich ein Synonym für den Remote-Server erstellen und stattdessen das Synonym verwenden:

insert into MyTable
(...)
select ... 
from EmployeeSynonym

Wenn das zugrunde liegende Objekt den Ort oder den Namen ändert, muss ich nur mein Synonym aktualisieren, um auf das neue Objekt zu verweisen.

http://www.mssqltips.com/sqlservertip/1820/use-synonyms-to-abstract-the-location-of-sql-server-database-objects/