使用SQL脚本从EXCEL中导入数据到SQL SERVER数据库

直接使用SQL SERVER数据库的导入功能操作步骤比较繁锁,而且有不同场景的兼容问题,如EXCEL文件版本问题,字段选择问题等,使用SQL脚本可以快速执行,只需要导入自己想要的字段,无需一个个手动选择,还可以方便置入程序,赶紧动起来吧。

操作步骤:

(1)服务配置
在目标的SQL Server主机上,Win+R调出运行,输入services.msc调出服务。将SQL Server (MSSQLSERVER)、SQL Full-text Filter Daemon Launcher (MSSQLSERVER)两个服务的登录身份,改为本地系统账户(右击服务,选择属性,切换到“登录”选项卡,登录身份改为“本地系统账户”)。

未做此项配置对应的错误提示为:无法初始化链接服务器 "(null)" 的 OLE DB 提供程序 "Microsoft.ACE.OLEDB.12.0" 的数据源对象
这个错误通常表示 SQL Server 进程和文件之间存在权限问题。 请确保运行 SQL Server 服务的帐户对文件具有完全访问权限。 按以上配置即可

(2)导入数据
-- 首先,确保已启用Ad Hoc Distributed Queries
EXEC sp_configure 'Show Advanced Options', 1;
RECONFIGURE;
EXEC sp_configure 'Ad Hoc Distributed Queries', 1;
RECONFIGURE;
 
-- 然后,使用OPENROWSET导入Excel数据
INSERT INTO YourTargetTable
SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
    'Excel 12.0; Database=C:\path\to\your\spreadsheet.xlsx; HDR=YES; IMEX=1',
    'SELECT * FROM [Sheet1$]');
 
-- HDR 表示首行是否为列名,YES 指首行为数据列标题,NO 表示首行也是数据行
-- IMEX 是 IMEX=1 表示混合模式
 
-- 完成操作后,可以禁用Ad Hoc Distributed Queries
EXEC sp_configure 'Ad Hoc Distributed Queries', 0;
RECONFIGURE;
EXEC sp_configure 'Show Advanced Options', 0;
RECONFIGURE;

  • 9
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值