SQL语句完成Excel数据导入数据库表中流程方法及注意事项

第一步:先查看数据库是否安装AccessDatabaseEngine_X64.exe,

如下图查看:

 

如果未安装先下载脚本之家下载地址 https://www.jb51.net/softs/291504.html

下载后操作下面

开始--运行中 输入  cmd  进入界面 

 

再输入路径  E:\BaiduYunDownload\AccessDatabaseEngine_X64.exe /passive 

 

即完成安装。

注意,路径要改成你自己的文件存放路径,上图只是参考例子

2、查看注册表   在开始--运行中打入 regedit  回车

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\14.0\Common\FilesPaths,删除mso.dll  即可完成

 

第二步:开启导入功能

打开数据库创建查询窗口复制如下代码:

--开启导入功能

    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 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

-----

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 

 

SELECT * FROM OpenDataSource

('Microsoft.ACE.OLEDB.12.0','Excel 8.0;hdr=yes;Database=E:\csmodel\user.xlsx')...[Sheet1$]

----插入数据

insert into EM_User

SELECT * FROM OpenDataSource

('Microsoft.ACE.OLEDB.12.0','Excel 8.0;hdr=yes;Database=E:\csmodel\user.xlsx')...[Sheet1$]

 

结束语:

这种方法只能是Excel表中有列要一一对应数据库表字段,而且数据类型,值都不能该表

如果想要动态id或赋其他值可以考虑使用游标,请看下一章节^_^

 

猜你喜欢

转载自www.cnblogs.com/lijl/p/11368728.html