【问题标题】:configuring SQL Server instance for Data Access using OPENROWSET, OPENQUERY使用 OPENROWSET、OPENQUERY 为数据访问配置 SQL Server 实例
【发布时间】:2013-01-11 18:41:26
【问题描述】:

我在运行 Windows 7 x-64 的独立非联网开发 PC 上安装了 SQL Server 2012 完整版。假设 FOO 是我的 PC 的名称,而我的 SQL Server 命名实例是 FOO\SQL2012。

我正在尝试遵循示例here,它展示了如何使用存储过程作为数据源来创建新的临时表。

我想执行这些查询中的任何一个,但我得到了显示的错误。

   SELECT * into #temp FROM OPENQUERY("FOO\SQL2012", 'exec MySchema.MyStoredProc')

   **ERROR: Server 'FOO\SQL2012' is not configured for DATA ACCESS.**

或者这个查询:

  SELECT * INTO #temp FROM OPENROWSET('SQLNCLI', 'Server=(local)\SQL2012;Trusted_Connection=yes;',
 ' EXEC MySchema.MyStoredProc')

 **ERROR: Msg 11529, Level 16, State 1, Procedure sp_describe_first_result_set, Line 1

无法确定元数据,因为每个代码路径都会导致错误;查看其中一些以前的错误。**

我将如何配置 SQL Server 实例以允许当前已通过身份验证的用户,无论它可能是谁,对本地实例使用 OPENROWSET、OPENQUERY?

通过 Windows 进行身份验证的用户和通过 SQL Server 进行身份验证的用户是否需要这些查询的不同版本?

【问题讨论】:

    标签: windows-authentication sql-server-2012 openrowset openquery sql-authentication


    【解决方案1】:

    您应该只需要为每个链接服务器执行一次此操作(我建议始终引用 FOO\ 或始终引用 (local)\ ...保持一致!)。

    EXEC sp_serveroption 'FOO\SQL2012', 'DATA ACCESS', 'true';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-24
      • 1970-01-01
      • 2011-06-11
      • 1970-01-01
      • 2021-05-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多