DECLARE @DBServerIP varchar(16)
DECLARE @DBServerUserID varchar(100)
DECLARE @DBServerUserPW varchar(100)
SELECT @DBServerIP = DBServerIP, @DBServerUserID = DBServerUserID, @DBServerUserPW = DBServerUserPW FROM dbo.DBServer
DECLARE @StrSQL nvarchar(4000)
SET @StrSQL = N'EXEC master.dbo.sp_addlinkedserver @server = N''' + @DBServerIP + ''', @srvproduct=N''SQL Server'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N''' + @DBServerIP + ''',@useself=N''False'',@locallogin=NULL,@rmtuser=N''' + @DBServerUserID + ''',@rmtpassword=''' + @DBServerUserPW + ''''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''collation compatible'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''data access'', @optvalue=N''true'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''dist'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''pub'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''rpc'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''rpc out'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''sub'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''connect timeout'', @optvalue=N''0'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''collation name'', @optvalue=null'
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''lazy schema validation'', @optvalue=N''false'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''query timeout'', @optvalue=N''0'''
EXEC sp_executesql @StrSQL
SET @StrSQL = N'EXEC master.dbo.sp_serveroption @server=N''' + @DBServerIP + ''', @optname=N''use remote collation'', @optvalue=N''true'''
EXEC sp_executesql @StrSQL
