sql server 中OPENROWSET与OPENDATASOURCE的用法

博客主要围绕SQL查询Excel文件展开,给出了不同的查询语句示例,如使用OPENROWSET和OpenDataSource函数。其中一条查询语句报错,提示不可识别Excel文件的数据库格式,反映了在SQL操作Excel文件时可能遇到的问题。

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

SELECT * FROM OPENROWSET('sqloledb.1','mrp-server';'sa';'123',DBdata.dbo.tbG_gzzxzl)


 SELECT a.*
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
   'd:/aaa.xls';'admin';'', data)
   AS a
 以下语句能成功,上一天语句却不行:OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 报错。
[OLE/DB provider returned message: 不可识别的数据库格式 'd:/aaa.xls'。]
SELECT *
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
 'Data Source="d:/aaa.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...data$

SELECT *
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',  'Data Source="c:/account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...abc$
 
insert into OPENDATASOURCE('sqloledb','Data Source=mrp-server;User ID=sa;Password=12345').voutmmstdata.dbo.zcctest (cust_no,cust_name)
SELECT cust_no,cust_name
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0','Data Source="c:/111.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...getbom1$
 
 
select * from  OPENDATASOURCE('SQLOLEDB', 'Data Source=mrp-server;User ID=sa;Password=12345').voutmmstdata.dbo.zcctest
 
delete from opendatasource('sqloledb','Data Source=mrp-server;User ID=sa;Password=12345').voutmmstdata.dbo.zcctest
这条语句在ACCESS数据库不带密码的时候也能成功运行,加上寄密码之后按照以下写法却不行:其中abc密码.
 SELECT a.*
FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',
   'd:/demo.dat';'admin';'abc', temp)
   AS a
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值