导入导出数据库数据,报错,链接服务器"(null)"的 OLE DB 访问接口 "Microsoft.Jet.OLEDB.4.0" 返回了消息 "未指定的错误"。

 

 

 

在操作数据库中,我们难免会遇到导入和导出数据库中的数据问题,但有时用SQL语句操作时,就会报各种错误,比如下面这种错误。

错误各种找啊,最终解决,现总结原因如下:

1.未开启Ad Hoc Distributed Queries 服务:

  开启方式和关闭方式如下:

  

 1 --启用Ad Hoc Distributed Queries:
 2  exec sp_configure 'show advanced options',1
 3  reconfigure
 4  exec sp_configure 'Ad Hoc Distributed Queries',1
 5  reconfigure
 6 
 7  --使用完成后,关闭Ad Hoc Distributed Queries:
 8  exec sp_configure 'Ad Hoc Distributed Queries',0
 9  reconfigure
10  exec sp_configure 'show advanced options',0
11  reconfigure
12  

 

2.Microsoft.Jet.OLEDB.4.0 引擎设置阻止了导入和导出。


  设置方式如下(SQL2005为例子):

   SQL Server Management Studio ->服务器对象-->链接服务器-->Microsoft.Jet.OLEDB.4.0-->右键属性-->访问接口选项:全都不选

 

3.SQL Server(MSSQLSERVER)和SQL Full-Filter Deamon Launcher 服务的登录身份设置错误:

 

  设置方式如下:

    将SQL Server(MSSQLSERVER)和SQL Full-Filter Deamon Launcher(MSSQLSERVER)两个服务的登录身份改为LocalSystem

 

4.确保要导入的数据格式正确。

 

5.确保在导入数据时,Excel表或者其他数据库表没有被其他软件打开。

 

6.确定你的Office版本;选择合适的SQL语句进行导入和导出。(导入为例)

 

  如果是2003之前的,一般用下面的SQL语句:

 

1  insert into dbo.data_cldeb(gg,xh,cl,de)
2   select 规格,型号,'',铜 from OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
3   'Data Source=F:\gongzuo\系列7.xls;Extended Properties=Excel 5.0')...[Sheet1$]

  如果Office是2007之后的,一般用下面的SQL语句:

 

1 insert into dbo.data_cldeb(gg,xh,cl,de)
2 select 规格,型号,'',铜 from OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',
3 'Data Source=F:\gongzuo\系列7.xls;Extended Properties=Excel 8.0')...[Sheet1$]

 

 

 

 

 

 

  

 

  

posted @ 2012-12-03 17:21  枫上善若水  阅读(13897)  评论(0编辑  收藏  举报