【问题标题】:How to pass parameter to a store procedure in openrowset and sql-server authentication如何在 openrowset 和 sql-server 身份验证中将参数传递给存储过程
【发布时间】:2020-07-11 10:33:37
【问题描述】:

我有一个带有动态参数 (@ parametr1, @parametr2) 的存储过程,我想在带有 SQL-SERVER 身份验证的 openrowset 中使用它。

【问题讨论】:

    标签: sql-server openrowset sql-server-authentication


    【解决方案1】:

    这是一个如何使用动态 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)
    

    【讨论】:

    • 谢谢。我仍然有问题。我如何在 Openrowset 中使用它。
    • 我不确定你在问什么,我的答案是使用 openrowset。
    • 试试execute sp_executesql @query
    猜你喜欢
    • 1970-01-01
    • 2021-04-28
    • 1970-01-01
    • 2015-12-20
    • 2013-07-06
    • 1970-01-01
    • 2017-02-19
    • 1970-01-01
    • 2014-08-29
    相关资源
    最近更新 更多