如何用SQL语句查询Excel数据?

本文介绍如何使用SQL Server通过OPENROWSET或OpenDataSource查询不同版本Excel文件的方法,包括配置Ad Hoc Distributed Queries步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

2007和2010版本:

 SELECT *
 
FROM OpenDataSource'Microsoft.ACE.OLEDB.12.0',
 
'Data Source="c:\book1.xlsx";User ID=Admin;Password=;Extended properties=Excel 12.0')...[Sheet1$]


SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\book1.xlsx''SELECT * FROM [Sheet1$A1:D100]')


SELECT * FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\book1.xlsx''SELECT * FROM [Sheet1$]')

2003版本:

SELECT *
FROM OpenDataSource'Microsoft.Jet.OLEDB.4.0',
'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 8.0')...[Sheet1$]


SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\book1.xls''SELECT * FROM [Sheet1$]')


SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\book1.xls''SELECT * FROM [Sheet1$A1:D100]')


而且,还需要用拥有服务器sysadmin角色权限的登录帐号,先执行下列语句打开SQL SERVER的'Ad Hoc Distributed Queries'开关。

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


执行查询后,再用相反顺序的语句,关闭'Ad Hoc Distributed Queries'开关。

 

exec sp_configure 'Ad Hoc Distributed Queries',0;
reconfigure;exec sp_configure 'show advanced options',0;reconfigure;


 # 网站名称: Excel技巧网|Excel 2010/2007新领地
# 署名作者: apolloh
# 版权声明: 版权所有 非作者本人转载须经许可并注明作者和出处
# 本文来自:
# 引用作品:
# 适用版本: 2010 2007 2003以前版本 
# 语言环境: 简体中文 (頁麵右上角簡繁轉換)
# 内容简介:
# 文章地址: http://www.exceltip.net/thread-5862-1-1-0.html
# 学习方法: 掌握Excel技巧的关键是动手操作|下载≠知识

 

2007和2003都可用

 

SELECT * FROM OpenDataSource'Microsoft.ACE.OLEDB.12.0','Data Source="D:\test1.xls";User ID=Admin;Password=;Extended properties="Excel 12.0 Xml;HDR=YES;IMEX=1";')...[Sheet1$]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值