【发布时间】:2009-11-18 20:03:48
【问题描述】:
尝试更新链接服务器 (SQL 2000/2005) 上的表,但我的服务器名称不会提前知道。我正在尝试这个:
DECLARE @Sql NVARCHAR(4000)
DECLARE @ParamDef NVARCHAR(4000)
DECLARE @SERVER_NAME VARCHAR(35)
SET @Sql = 'UPDATE
@server_name_param.dba_sandbox.dbo.SomeTable
SET SomeCol=''data'''
SET @ParamDef = N'@server_name_param VARCHAR(35)'
print @Sql
exec sp_executesql @Sql, @ParamDef, @server_name_param=@SERVER_NAME
返回这个:
UPDATE
@server_name_param.dba_sandbox.dbo.SomeTable
SET SomeCol='data'
Msg 170, Level 15, State 1, Line 2
Line 2: Incorrect syntax near '.'.
有什么想法吗?反正我是查看参数绑定后正在执行的SQL语句吗?
【问题讨论】:
标签: sql sql-server sql-server-2005 linked-server sp-executesql