高分求sqlserver写excel

james_li85 2010-04-06 06:17:13
1.怎么把数据从sqlserver里面的数据写入到指定路径的excel
比如
declare @公司名称 char(50)
set @公司名称 = (select 公司名称 from 公司信息)
EXEC [master]..xp_cmdshell 'bcp "select * from [master].tab_a" queryout D:\'+ convert(varchar,@公司名称)+'\ssss.xls -c -q -S"." -U"sa" -P"123456"'
但是总是报
消息 102,级别 15,状态 1,第 68 行
'+' 附近有语法错误。
我用下面语句也报同样的错误
insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 8.0;IMEX=0;HDR=YES;DATABASE=d:\'+convert(varchar,rtrim(@公司名称))+'\ssss.xls',[Sheet1$])
select * from tab_a
2、如何在上一句的基础上将结果插入到指定的单元格内
比如我要将数据写到ssss.xls,sheet1的B3单元格内
谢谢各位大侠
...全文
37 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
htl258_Tony 2010-04-06
  • 打赏
  • 举报
回复
--1.注意用 varchar或nvarchar,并注意要输长度.我下面语句测试成功.

declare @公司名称 varchar(50)
set @公司名称 = (select 公司名称 from 公司信息)
declare @sql nvarchar(1000)
set @sql='bcp "select * from [mydb]..tb" queryout D:\'+ convert(varchar(200),@公司名称)+'\ssss.xls -c -q -S"." -U"sa" -P"123"'
EXEC [master]..xp_cmdshell @sql
ACMAIN_CHM 2010-04-06
  • 打赏
  • 举报
回复
没有办法,需要通过程序来实现。
feixianxxx 2010-04-06
  • 打赏
  • 举报
回复
不是很懂 帮UP
luozhangwen 2010-04-06
  • 打赏
  • 举报
回复
sf 没人帮帮楼主.

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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