Budete to muset udělat, nelze to parametrizovat
....
SET @Sql = 'UPDATE ' + @server_name_param + '.dba_sandbox.dbo.SomeTable SET SomeCol=''data'''
....
Edit:Existuje další způsob, který jsem používal ve svých čistých dnech DBA
EXEC sp_setnetname 'AdhocServer', @SERVER_NAME
UPDATE AdhocServer.dba_sandbox.dbo.SomeTable SET SomeCol 'data'
EXEC sp_setnetname 'AdhocServer', 'MeaninglessValue'
sp_setnetname
existuje od SQL Server 2000 do 2008
Upravit2. Oprávnění :
Zkuste EXECUTE AS LOGIN = 'login_name'
, kde přihlašovací_jméno je superuživatel
Ve skutečnosti jsem to nepoužil (používám pro testování "AS USER"), takže si nejsem jistý jemnějšími body...
Úprava 3:pro souběžnost zvažte použití sp_getapplock a uložené procedury nebo jiného mechanismu kontroly souběžnosti.