备份表到excel中??

wztx_ 2007-01-15 01:28:37
将select * from biao where year='2006'
查询结果导入excel中
怎么实现?
...全文
203 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
feixiangVB 2007-01-15
  • 打赏
  • 举报
回复
收藏了
rookie_one 2007-01-15
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/5288/5288346.xml?temp=6.670779E-02

方法I:(Excel文件已经存在,而且已经按照要接收的数据创建好表头——追加记录)
insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\temp.xls',temp$)
select * from tbname

方法II:(Excel文件不存在,也可以用BCP来导成类Excel的文件,注意大小写)
exec master..xp_cmdshell 'bcp "select top 1 * from dbname..tbname
where c1=''张三''" queryout c:\Temp.xls -c -q -S"ServerName" -U"sa" -P"xxx"'
rookie_one 2007-01-15
  • 打赏
  • 举报
回复
老大已经详细总结过了:
http://blog.csdn.net/zjcxc/archive/2003/12/29/20084.aspx
gc_ding 2007-01-15
  • 打赏
  • 举报
回复
鉴于楼主的要求备份,要经常保存记录,所以建议用以下方案(追加数据,不是覆盖数据):
(1)新建EXCEL文件
(2)在SHEET1的A1单元格输入你在SQL表的所需显示的字段名:
例如只保存3个字段id,input,indate
(3)执行以下语句(其中abc是数据库名称)
insert into OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=
c:\temp.xls',sheet1$)
select id,input,indate from abc.dbo.biao where year='2006'
冷箫轻笛 2007-01-15
  • 打赏
  • 举报
回复
declare @sql varchar(1000)

set @sql = 'bcp "select * from biao where year=''2006''" queryout c:\tab.xls -c -S. -Usa -P'

exec XP_CMDSHELL @sql
caixia615 2007-01-15
  • 打赏
  • 举报
回复
先把结果保存在表里再用BCP导出到EXECL
jacobsan 2007-01-15
  • 打赏
  • 举报
回复
用bcp,类似
exec master..xp_cmdshell 'bcp "select * from biao where year=''2006''" queryout c:\Temp.xls -c -q -S"ServerName" -U"sa" -P"xxx"'

34,590

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧