연결된 서버를 나타내는 저장 프로 시저가 있습니다. 절차 전반에 걸쳐 여러 곳에서 다음과 같은 것을 얻었습니다.
INSERT INTO [TableName]
(...Columns...)
SELECT ...Columns...
FROM [ServerName\InstanceName].[Catalogue].[dbo].[TableName]
WHERE TableNameID = @TableNameID
이 절차는 내 개발 환경, 테스트 환경 및 라이브 환경에 있습니다.
문제는 서버 이름이 각 환경마다 다르기 때문에 각 프로 시저 사본이 미묘하게 다르다는 것입니다. 이로 인해 스크립트 업데이트 배포 관리가 번거로워집니다.
각 환경에서 동일한 버전을 실행할 수 있도록 프로 시저를 이식 가능하게 만드는 방법이 있습니까?
그렇지 않은 경우 스크립트 배포가 실수 / 오류에 덜 취약 해 지도록 할 수있는 방법이 있습니까?
@JNK는 나쁜 생각은 아니지만, 몇 가지 테이블이 있지만 링크 된 서버 참조가 반영 된 저장 프로 시저보다 뷰를 유지 관리하는 것이 더 간단합니다.
—
닥터 존스
@ jnk, 그 대답을해야합니다.
—
HLGEM
—
it3xl
SELECT <fields> FROM <linked server>
있지만 모든 서버에서 동일한 뷰 이름을 사용하여 코드 유지