Tengo un procedimiento almacenado que se refiere a un servidor vinculado. En varios lugares a lo largo del procedimiento, tengo algo como lo siguiente:
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
Este procedimiento existe en mi entorno de desarrollo, entorno de prueba y entorno en vivo.
El problema es que cada copia del procedimiento es sutilmente diferente porque los nombres de los servidores son diferentes para cada entorno. Esto hace que la administración de la implementación de actualizaciones de script sea problemática.
¿Hay alguna manera de hacer que el procedimiento sea portátil para que cada entorno pueda ejecutar versiones idénticas?
Si no, ¿hay algo que pueda hacer para que la implementación del script sea menos propensa a errores?
SELECT <fields> FROM <linked server>
pero usar el mismo nombre de vista en todos los servidores para mantener el código mantenido