【问题标题】:SQL Query to import data from 50 Access ACCDB databases从 50 个 Access ACCDB 数据库中导入数据的 SQL 查询
【发布时间】:2016-02-27 04:09:57
【问题描述】:

我是 SQL 新手,所以请原谅我的无知。我下载了 SQL Server Express Edition 2014 的免费版本并拥有一台 32 位机器。我正在使用 Microsoft SQL Server Mgmt Studio。我正在尝试设置一个流程,以链接或将 50 个 Microsoft Access 2013 数据库(每周更新)中的 50 个 Access 表导入 SQL。我目前在 Access 2013 数据库中执行此操作,但我正在尝试替换该过程。我下载了 SQL Server Express Edition 2014 的免费版本并拥有一台 32 位机器。我在我的 PC 上使用 Microsoft SQL Server Mgmt Studio。下面是我整理的代码。但是,这是消息窗口中的结果:

配置选项“显示高级选项”从 1 更改为 1。运行 RECONFIGURE 语句进行安装。
配置选项“Ad Hoc Distributed Queries”从 1 更改为 1。运行 RECONFIGURE 语句进行安装。

消息 7403,第 16 级,状态 1,第 8 行
OLE DB 提供程序“Microsoft.Jet.OLEDB.12.0”尚未注册。

我是一个新手,所以我非常感谢知识上没有任何假设。谢谢。

sp_configure 'show advanced options', 1;
RECONFIGURE WITH OVERRIDE;
GO
sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE WITH OVERRIDE;
GO

INSERT INTO TEST2.dbo.MyTest
SELECT * FROM OPENDATASOURCE(   
'Microsoft.Jet.OLEDB.12.0',
'Data Source="D:\data\EXCEPT2.accdb"')...Testtbl;
GO

【问题讨论】:

    标签: sql sql-server ms-access import


    【解决方案1】:

    原来我必须运行下面的代码才能让 sql 工作。我还将“Microsoft.Jet.OLEDB.12.0”更改为“Microsoft.Jet.ACE.12.0”,

    USE [master] 
    GO 
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1 
    GO 
    EXEC master.dbo.sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1 
    GO
    

    【讨论】:

      猜你喜欢
      • 2021-12-13
      • 2016-07-11
      • 2011-01-29
      • 1970-01-01
      • 2012-03-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-04-01
      相关资源
      最近更新 更多