将表头导入到excel中
我通过以下命令将数据导如到excel
exec master..xp_cmdshell 'bcp "select * from biao where year= ' '2006 ' ' " queryout c:\Temp.xls -c -q -S "ServerName " -U "sa " -P "xxx " '
导入到excel中的数据不包括表头
请问如何将表头也导入到excel
这个问题有点急
希望大家能帮个忙
[解决办法]
bcp就是不带字段名的,在前台做字段名的插入工作,或者利用视图拼接好,注意视图的字段都要转为字符型
[解决办法]
导入导出 BCP导出表头的过程
CREATE proc out2xls
@服务器名 varchar(255),
@库名 varchar(255),
@表名 varchar(255),
@用户名 varchar(100),
@密码 varchar(100),
@路径及文件名 varchar(255)
as
declare @temp1 nvarchar(4000),@temp2 varchar(8000)
set @temp1= 'select @value1= ' ' ' ',@value2= ' ' ' ' select @value1=@value1+ ' ', ' ' ' ' ' '+a.name+ ' ' ' '+char(39)+ ' ' [ ' '+a.name+ ' '] ' ',@value2=@value2+ ' ',cast( ' '+ ' '[ ' '+a.name+ ' '] ' '+ ' ' as varchar(200)) ' ' from '+@库名+ '..syscolumns a, '+@库名+ '..sysobjects d where a.id=d.id and d.name= ' ' '+@表名+ ' ' ' '+ ' order by a.colorder '
exec sp_executesql @temp1,N '@value1 nvarchar(4000) output , @value2 varchar(8000) output ',@temp1 output,@temp2 output
select @temp1=right(@temp1,len(@temp1)-1),@temp2=right(@temp2,len(@temp2)-1)
exec( 'select * into '+@库名+ '.dbo.中间表 from (select '+ @temp1+ ' union all SELECT '+@temp2+ ' FROM '+@库名+ '.. '+@表名+ ') tem3 ')
set @temp2= 'bcp '+@库名+ '.dbo.中间表 out '+@路径及文件名+ ' -c -S '+@服务器名+ ' -U '+@用户名+ ' -P '+@密码
EXEC master..xp_cmdshell @temp2
exec( 'drop table '+@库名+ '.dbo.中间表 ')
GO
exec out2xls 'daliserver ', 'pubs ', 'jobs ', 'sa ', 'element ', 'c:\a.txt '
go
drop proc out2xls