SQL Server Out Put Excel File
在 SQL Server中, 导出EXCEL 文件, 用到 bcp.exe
bcp 导出的本质是纯文本文档,
若数据含有中文,请导出到中文版EXCEL,或TXT文档等, 否则乱码....
用TXT 打开英文版EXCEL,也可以,
导出 数据到C:\authors.xls, 若文件存在则重写文件, 不存在则创建文件
Exec master..xp_cmdshell 'bcp "select [DBName].dbo.[TableName].* from [DBName].dbo.[TableName] where [ColumnName] = Value" queryout C:\authors.xls -c -S".\SQLExpress" -U"sa" -P"Password"'
select SQL语句根据实际需要来重写
导出文件只有数据,没有表头.
如果, 需要带表头, 则要预先设置好表头, 用 insert into 方法.
insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 8.0;HDR=YES;DATABASE=C:\author.xls',Sheet1$) select [DBName].dbo.[TableName].* from [DBName].dbo.[TableName] where [ColumnName] = Value
select SQL语句根据实际需要来重写
如果,需要表头, 而且是单表到出, 请访问以下网址
1. 使用SQL语句
http://blog.csdn.net/fcfd86/archive/2010/02/26/5329430.aspx
2. 使用存储过程
http://blog.csdn.net/fcfd86/archive/2010/02/26/5329446.aspx
笔者曾在《程序员》2009年11期上探讨Transact-SQL的元编程,即通过目录视图、元数据函数等方式访问数据库的元数据信息,在执行过程中动态生成SQL脚本。当时限于篇幅,所给的例子较少。这里给出动态生成SQL脚本的一个典型应用,把数据表的内容转换为相应的INSERT语句。
这个启发来自我管理远程数据库的经历。我常常需要用本 ......