首页 > 数据库技术 > 详细

从Excel表格导入数据到数据库

时间:2015-11-13 18:36:30      阅读:269      评论:0      收藏:0      [点我收藏+]

数据库:SQL

1、小数据直接粘贴

2、用导入向导

3、用SSIS包

4、用SQL语句

现在详细说一下第4种方法,以.xlsx文件为例

.xlsx文件需要用provider“Microsoft.ACE.OLEDB.12.0”读取,.xls文件需要Microsoft.ACE.OLEDB.4.0,所以需要先检查是否在SQL注册此Provider

具体查看位置为:打开SQL Management Studio->SQL Servers->Linked Servers->Providers

技术分享

 

如果没有,需要下载64位引擎安装 http://www.microsoft.com/zh-CN/download/details.aspx?id=13255

Tip:64位系统中,如果是安装了32位的office 产品(如07版),需要先卸载全部32位产品,才可以安装。而且64位系统中安装了07版office,安装那个没有x64的引擎可以成功,但没有找到4.0Provider。

彻底卸载32位office产品:

1、控制面板卸载全部Microsoft Office程序

2、打开http://support.microsoft.com/kb/290301/zh-cn ,点击运行,将检测到的Microsoft Office程序卸载

3、清除注册表:运行输入regedit,进入到HKEY_CLASSES_ROOT\Installer\Products ,删除所有0000510开头(win8),00004,00002(win7)开头的项

 

开启导入功能:

    exec sp_configure show advanced options,1
    reconfigure
    exec sp_configure Ad Hoc Distributed Queries,1
    reconfigure

允许在进程中使用ACE.OLEDB.12,允许动态参数

EXEC master.dbo.sp_MSset_oledb_prop NMicrosoft.ACE.OLEDB.12.0, NAllowInProcess, 1
EXEC master.dbo.sp_MSset_oledb_prop NMicrosoft.ACE.OLEDB.12.0, NDynamicParameters, 1

调用代码:

select * from OpenRowSet(Microsoft.ACE.OLEDB.12.0, Excel 12.0;HDR=Yes;IMEX=1;Database=D:\Book1.xlsx, select * from [Sheet1$])


 

 

  

 

从Excel表格导入数据到数据库

原文:http://www.cnblogs.com/endora/p/importExceltoSQL.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!