programing

링크된 서버에 대한 "IF EXISTRESS" 테스트가 있습니까?

javajsp 2023. 9. 11. 21:27

링크된 서버에 대한 "IF EXISTRESS" 테스트가 있습니까?

현재 서버 및 데이터베이스에 대해 특정 링크된 서버가 이미 존재하는지(링크가 아직 존재하지 않는 경우 생성할 수 있도록) 프로그램적으로(T-SQL에서) 확인할 수 있기를 원합니다.나는 이런 것들을 시도했습니다.

IF OBJECT_ID('myserver\devdb_1') IS NULL
BEGIN
  PRINT 'Does not exist, need to create link'
  EXEC master.dbo.sp_addlinkedserver @server = N'myserver\devdb_1', 
                                     @srvproduct=N'SQL Server'
END
ELSE
  PRINT 'Link already exists'

하지만 오브제_ID 테스트는 링크가 이미 존재하더라도 항상 null을 반환합니다.T-SQL에서 이 체크를 수행하여 내 코드의 나머지 부분이 항상 존재한다고 가정할 수 있는 방법이 있습니까?

체크인:

if not exists(select * from sys.servers where name = N'myserver\devdb_1')
IF NOT EXISTS ( SELECT TOP (1) * FROM sysservers WHERE srvname = 'myserver\devdb_1' )

언급URL : https://stackoverflow.com/questions/3104186/is-there-an-if-exists-test-for-a-linked-server