gpt4 book ai didi

sql - 如何在 sql 2008 中创建到 .dbf 的链接服务器?

转载 作者:行者123 更新时间:2023-12-01 22:42:34 24 4
gpt4 key购买 nike

我们有一个 sql 2008 并且想创建一个指向 dbf 文件的链接服务器。我应该选择哪个提供商,我有哪些提供商(ADsDSOObject、MSDAOSP、MSDASQL、MSIDXS、MSOLAP、SQLNCLI10、SQLOLEDB)

如果这些都不行,还有其他供应商吗?

最佳答案

我的步骤是:

  • 安装驱动程序Microsoft Access 数据库引擎 2010 可再发行 AccessDatabaseEngine.exe 32Bit AccessDatabaseEngine_x64.exe 64Bit

  • 创建 Sql 2012 链接服务器

    执行 master.dbo.sp_addlinkedserver
    @server = 'LinkedServerName',
    @srvproduct = '微软 ACE OLEDB 12',
    @provider = 'Microsoft.ACE.OLEDB.12.0',
    @datasrc = 'C:\DBF_Directory',
    @provstr = 'dBASE 5.0'

    EXEC master.dbo.sp_addlinkedsrvlogin
    @rmtsrvname = 'LinkedServerName',
    @useself = '假',
    @locallogin = NULL,
    @rmtuser = '管理员',
    @rmtpassword = ''

    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1

    从 LinkedServerName...TableName 中选择 *

  • 如果出现此错误:

    • OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”链接服务器“LinkedServerName”返回消息“未指定错误”。
    • 消息 7303,级别 16,状态 1,第 1 行无法初始化OLE DB 提供程序“Microsoft.ACE.OLEDB.12.0”的数据源对象链接服务器“LinkedServerName”

    我发现的问题是运行 qry 的用户没有对sqlserver临时目录有权限

  • 在这种情况下,您使用 SysinternalsSuite ProcessMon.exe 下载自 https://technet.microsoft.com/en-us/sysinternals/bb842062.aspx

    • 应用过滤器 Ctr+L 和
    • filter Result = 'ACCESS DENIED' 点击添加
    • 选择仅显示文件系统事件
      当 sql 查询运行时,您将看到如下内容:

    sqlservr.exe:000 查询信息
    C:\Users\MSSQLSERVER\AppData\Local\Temp 访问被拒绝

    授予对 C:\Users\MSSQLSERVER\目录的权限
    或者
    C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Temp 访问被拒绝
    授予C:\Windows\ServiceProfiles\NetworkService\目录权限

    因此,我向正在运行 que sql qry 的用户 授予读/写权限,并且一切运行正常。

    注意:向 MSSQLSERVER 对象授予权限有点棘手。

    1. 我做了:
      • 文件夹中的属性
      • 选择安全选项卡
      • 点击编辑按钮点击
      • 添加按钮
      • 输入对象名称:NT Service\MsSqlServer 点击 Check Names
      • 选择MSSQLSERVER对象点击确定
      • 选择允许完全控制

关于sql - 如何在 sql 2008 中创建到 .dbf 的链接服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10036745/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com