ฉันมีขั้นตอนการจัดเก็บที่อ้างอิงถึงเซิร์ฟเวอร์ที่เชื่อมโยง ในหลาย ๆ ที่ตลอดกระบวนการฉันมีบางอย่างดังต่อไปนี้:
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
ขั้นตอนนี้มีอยู่ในสภาพแวดล้อมการพัฒนาของฉันสภาพแวดล้อมการทดสอบและสภาพแวดล้อมแบบสด
ปัญหาคือแต่ละสำเนาของโพรซีเดอร์นั้นแตกต่างกันอย่างละเอียดเนื่องจากชื่อเซิร์ฟเวอร์แตกต่างกันสำหรับแต่ละสภาพแวดล้อม สิ่งนี้ทำให้การจัดการการปรับใช้การอัปเดตสคริปต์ลำบาก
มีวิธีทำให้โพรซีเดอร์แบบพกพาเพื่อให้แต่ละสภาพแวดล้อมสามารถรันเวอร์ชันที่เหมือนกันได้หรือไม่?
ถ้าไม่มีอะไรที่ฉันสามารถทำได้เพื่อให้การปรับใช้สคริปต์มีแนวโน้มที่จะเกิดข้อผิดพลาด / ข้อผิดพลาดน้อยลง
SELECT <fields> FROM <linked server>
แต่ใช้ชื่อมุมมองเดียวกันกับเซิร์ฟเวอร์ทั้งหมดเพื่อรักษารหัส