SQL SERVER使用OpenRowset,、OpenDataSource函数导入、导出数据到Excel 的几种方法(整理)
2013-09-23 10:18
816 查看
一、如我在D盘下有D:/物件编码.xls文件,有工作表名Sheet是中文命名为‘办公用品编码’,‘零件编码’。
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[办公用品编码$]
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[零件编码$]
二、如你的Excel文件是工作表是默认的Sheet命名为Sheet1,Sheet2等。
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[Sheet1$]
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[Sheet2$]
三、引用 Limpire (昨夜小楼)以下方法,也行
OpenRowSet和OpenDataSource都能用读取用数字命名的Sheet,只不过要加单引号界定,其它不规则命名的Sheet也一样。
假设C:/Text.xls有个Sheet名字是“3”:
select
* from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls')...['3$']
--OR
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls',['3$'])
--OR
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls','select * from [''3$'']')
--OpenRowSet(,,'query')可以不加单引号界定:
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls','select * from [3$]')
四、本人的方法:
导出EXCEL时,对应字段数类型都要相同,EXCEL字段的名称stano,sname 和数据库的要一样,才能导出成功。
insert into openrowset('MICROSOFT.JET.OLEDB.4.0','excel 8.0;
HDR=YES;database=D:/FName.xls',sheet1$)
select stano,sname from stainfo
以上在SQL SERVER2000上测试均可以运行,是在本地查询分析器中调试。
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[办公用品编码$]
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[零件编码$]
二、如你的Excel文件是工作表是默认的Sheet命名为Sheet1,Sheet2等。
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[Sheet1$]
select * into #temp from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=D:/物件编码.xls')...[Sheet2$]
三、引用 Limpire (昨夜小楼)以下方法,也行
OpenRowSet和OpenDataSource都能用读取用数字命名的Sheet,只不过要加单引号界定,其它不规则命名的Sheet也一样。
假设C:/Text.xls有个Sheet名字是“3”:
select
* from
opendatasource('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls')...['3$']
--OR
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls',['3$'])
--OR
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls','select * from [''3$'']')
--OpenRowSet(,,'query')可以不加单引号界定:
select
* from
openrowset('Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:/Test.xls','select * from [3$]')
四、本人的方法:
导出EXCEL时,对应字段数类型都要相同,EXCEL字段的名称stano,sname 和数据库的要一样,才能导出成功。
insert into openrowset('MICROSOFT.JET.OLEDB.4.0','excel 8.0;
HDR=YES;database=D:/FName.xls',sheet1$)
select stano,sname from stainfo
以上在SQL SERVER2000上测试均可以运行,是在本地查询分析器中调试。
相关文章推荐
- SQL SERVER使用OpenRowset,、OpenDataSource函数导入、导出数据到Excel 的几种方法(整理)
- 64位的Sql Server使用OPENROWSET导入xlsx格式的excel数据的时候报错(转载)
- SQL Server数据导入导出的几种方法
- 使用OPENROWSET将数据从excel导入到sql server
- SQL SERVER 导入、导出数据到Exce(使用OpenRowset,、OpenDataSource函数)以及访问远程数据库(openrowset/opendatasource/openquery)
- 【转】SQL Server数据表在编程中实现导出EXCEL的几种方法
- SQL Server数据表在编程中实现导出EXCEL的几种方法
- 使用OPENROWSET将数据从excel导入到sql server
- SQL Server数据导入导出的几种方法
- 使用OPENROWSET将数据从excel导入到sql server
- sql server 2005中表的数据与excel互相导入导出的方法
- SQL Server数据导入导出的几种方法
- SQL SERVER 导入、导出数据到Exce(使用OpenRowset,、OpenDataSource函数)以及访问远程数据库(openrowset/opendatasource/openquery)
- sql server 2005中表的数据与excel互相导入导出的方法
- SQL Server数据导入导出的几种方法
- SQL Server导入导出数据时最常见的一个错误解决方法
- 从SQL Server中导入/导出 Excel 的基本方法
- 轻松实现SQL Server与Access、Excel数据表间的导入导出
- ZK框架简介,以及在ZK下使用JXL读取Excel模板,导出数据模型到Excel的方法
- datagrid数据导出到excel文件给客户端下载的几种方法