我希望能够以编程方式(在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'
但是,即使链接已经存在,OBJECT_ID测试也始终返回null。有什么方法可以在T-SQL中执行此检查,以便我的其余代码可以假定链接始终存在?
办理登机手续sys.servers:
if not exists(select * from sys.servers where name = N'myserver\devdb_1')