【发布时间】:2020-07-11 10:33:37
【问题描述】:
我有一个带有动态参数 (@ parametr1, @parametr2) 的存储过程,我想在带有 SQL-SERVER 身份验证的 openrowset 中使用它。
【问题讨论】:
标签: sql-server openrowset sql-server-authentication
我有一个带有动态参数 (@ parametr1, @parametr2) 的存储过程,我想在带有 SQL-SERVER 身份验证的 openrowset 中使用它。
【问题讨论】:
标签: sql-server openrowset sql-server-authentication
这是一个如何使用动态 sql 执行此操作的示例。注意单撇号:
declare
@username sysname = N'MyUser',
@password nvarchar(32) = N'MyPassword',
@sqlinstance sysname = 'MYServer\MyInstance',
@dbname sysname = 'MyDatabase',
@query nvarchar(256);
set @query = concat
(
N'select t.* from openrowset(''sqloledb'',''server=', @sqlinstance,
';Database=', @dbname,
';UID=', @username,
';Pwd=', @password,
';'', ''select somecolumn from someschema.sometable'') t'
);
print @query;
exec(@query)
【讨论】:
execute sp_executesql @query