当前位置: 代码迷 >> SQL >> 关于sqlserver 2005 导出数据表到excel2007 (*xlsx)
  详细解决方案

关于sqlserver 2005 导出数据表到excel2007 (*xlsx)

热度:260   发布时间:2016-05-05 12:04:22.0
关于sqlserver 2005 导出数据表到excel2007 (*.xlsx)

今天遇到这么一个问题。怎么导出数据表到excel中呢。

查了很多资料,哎可以了结果一看,2003的excel有行数限制,65535行好像。可是数据表有将近10万。。。

然后发现了一位大侠帖子:http://blog.csdn.net/Limpire/article/details/2599760

写的很好。

方法简单。首先导出2007的xlsx格式,要装一下Microsoft.ACE.OLEDB.12.0(以下简称 ACE 引擎),Microsoft.Jet.OLEDB.4.0(以下简称 Jet 引擎只能访问 Office 97-2003,但不能访问 Office 2007。

Microsoft.ACE.OLEDB.12.0下载地址:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=7554f536-8c28-4598-9b72-ef94e038c891

安装后。启动ACE引擎:

   SQL Server Management Studio ->服务器对象-->链接服务器-->Microsoft.ACE.OLEDB.12.0-->右键属性-->访问接口选项:全都不选,

然后创建查询(导出到*.xlsx中)

insert into OPENROWSET('Microsoft.ACE.OLEDB.12.0','Excel 12.0;Database=C:\c.xlsx','select * FROM [sheet2$]') 
select * from [rs].[dbo].[GENERALDATA]


注意的地方是:'Excel 12.0,这个东西,2003的excel可能是4左右的数值,07的要12以后的数值了。

ok。到此结束。。。

祝好运!

  相关解决方案