【问题标题】:Querying data over linked server from SQL Azure RLS database从 SQL Azure RLS 数据库通过链接服务器查询数据
【发布时间】:2019-09-08 19:54:39
【问题描述】:

我想通过链接服务器从使用行级安全性的 SQL Azure 获取数据。问题似乎是查询没有返回任何数据。

如果我直接在 SQL Azure 上执行相同的查询,我会得到数据。

{链接服务器的 SQL 查询} - 不工作

EXEC SP_SET_SESSION_CONTEXT @key=N'TenantId', @value='XXX'
SELECT * FROM [AHPRO].[AllHoursProduction].[dbo].[User]

{SQL Azure 的 SQL 查询} - 工作

EXEC SP_SET_SESSION_CONTEXT @key=N'TenantId' ,@value='XXX'
select * from [AllHoursProduction].[dbo].[User]

【问题讨论】:

    标签: sql sql-server azure azure-sql-database linked-server


    【解决方案1】:

    使用链接服务器时,您有一个本地会话和一个远程会话。您在本地会话中设置了一个属性,它对您的远程会话没有影响。

    你可以做类似的事情

    exec('
    EXEC SP_SET_SESSION_CONTEXT @key=N''TenantId'' ,@value=''XXX''
    select * from [AllHoursProduction].[dbo].[User]
    ') at AHPRO
    

    在链接服务器上运行整个批处理。

    【讨论】:

      猜你喜欢
      • 2015-08-27
      • 1970-01-01
      • 2011-06-29
      • 2014-04-07
      • 2018-07-03
      • 1970-01-01
      • 1970-01-01
      • 2016-12-14
      • 2012-06-22
      相关资源
      最近更新 更多