1
我必須在一組鏈接的服務器上運行幾個查詢。我想嘗試,而不是訴諸動態SQL,但迄今有麻煩。如何高效地在多個鏈接的服務器上運行查詢?
這是我到目前爲止有:
SELECT @serverName = Name FROM #servers WHERE ID = @minID
EXEC sp_addlinkedserver @[email protected], @srvproduct='SQL Server'
EXEC sp_addlinkedsrvlogin @rmtsrvname = N'lani-radio001', @locallogin = NULL , @useself = N'False', @rmtuser = N'user1', @rmtpassword = N'Password1'
declare @sql varchar(255)
SET @sql = 'SELECT * from [' + @serverName + '].mydb.dbo.mytable'
EXEC (@sql)
我必須運行在對多個服務器(這些都是#servers表)循環上面的代碼。 如何在不訴諸動態SQL的情況下解決此問題?
P.S.有關所有服務器的SQL Server 2005。
不知道你可以不動態SQL。唯一的其他可能的答案是使用PowerShell。 – AgentDBA 2011-03-15 10:20:02