Ho una procedura memorizzata che fa riferimento a un server collegato. In diversi punti della procedura ho ottenuto qualcosa di simile al seguente:
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
Questa procedura esiste nel mio ambiente di sviluppo, ambiente di test e ambiente live.
Il problema è che ogni copia della procedura è leggermente diversa perché i nomi dei server sono diversi per ciascun ambiente. Ciò rende problematica la gestione della distribuzione degli aggiornamenti degli script.
C'è un modo per rendere portatile la procedura in modo che ogni ambiente possa eseguirne versioni identiche?
In caso contrario, c'è qualcosa che posso fare per rendere la distribuzione degli script meno soggetta a errori / errori?
SELECT <fields> FROM <linked server>
ma utilizzare lo stesso nome vista su tutti i server per mantenere il codice mantenuto