All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
ASP.NET跨页面传值技巧总结_.net资料_编程技术
php 截取中文_[PHP教程]
用php或js获取图片大小,高宽尺寸_[PHP教程]
PHP实例:多文件上传的例子_[PHP教程]
利用UrlRewrite,asp.net动态生成htm页面(补充说明)_[Asp.Net教程]
初学者接触HTML了解一些HTML标记(1)_[Html教程]
关于textarea的直观换行_JavaScript技术_编程技术
PHP,PEAR简介_php资料_编程技术
单击GridView某行获取该行某列内容并显示_[Asp.Net教程]
javascript数组,sort方法的分析_JavaScript技术_编程技术
Reading number is top 10 pictures
The real super beauty4
BingBingFan apple dew point photo gallery4
29 the belle stars after bath figure1
YangYuYing and ZhengShaoQiu dance on the generous come interest dye-in-the-wood
到南昌西站了1
狗狗与主人神同步2
29 the belle stars after bath figure4
如果没有好报,为什么要做好人?
Household design comfortable contracted
战场废物2
Download software ranking
星际争霸1.08硬盘免安装版
Tram sex maniac 2 (H) rar bag19
asp.net技术内幕
jdk1.6 for windows
Tram sex maniac 2 (H) rar bag5
matrix1
I for your crazy
Jinling thirteen stock
仙剑奇侠传98版歌曲
实战黑客不求人
归海一刀 published in(发表于) 2014/2/3 6:35:39 Edit(编辑)
sql server 带列名导出至excel_[SQL Server教程]

sql server 带列名导出至excel_[SQL Server教程]

sql server 带列名导出至excel_[SQL Server教程]

-sql语句就用下面的存储过程

/*--数据导出Excel


导出查询中的数据到Excel,包含字段名,文件为真正的Excel文件
,如果文件不存在,将自动创建文件
,如果表不存在,将自动创建表
基于通用性考虑,仅支持导出标准数据类型
--邹建 2003.10--*/


/*--调用示例


p_exporttb @sqlstr='select * from 地区资料'
,@path='c:\',@fname='aa.xls',@sheetname='地区资料'
--*/
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_exporttb]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_exporttb]
GO


create proc p_exporttb
@sqlstr sysname, --查询语句,如果查询语句中使用了order by ,请加上top 100 percent
@path nvarchar(1000), --文件存放目录
@fname nvarchar(250), --文件名
@sheetname varchar(250)='' --要创建的工作表名,默认为文件名
as
declare @err int,@src nvarchar(255),@desc nvarchar(255),@out int
declare @obj int,@constr nvarchar(1000),@sql varchar(8000),@fdlist varchar(8000)


--参数检测
if isnull(@fname,'')='' set @fname='temp.xls'
if isnull(@sheetname,'')='' set @sheetname=replace(@fname,'.','#')


--检查文件是否已经存在
if right(@path,1)<>'\' set @path=@path+'\'
create table #tb(a bit,b bit,c bit)
set @sql=@path+@fname
insert into #tb exec master..xp_fileexist @sql


--数据库创建语句
set @sql=@path+@fname
if exists(select 1 from #tb where a=1)
set @constr='DRIVER={Microsoft Excel Driver (*.xls)};DSN='''';READONLY=FALSE'
+';CREATE_DB="'+@sql+'";DBQ='+@sql
else
set @constr='Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties="Excel 5.0;HDR=YES'
+';DATABASE='+@sql+'"'


--连接数据库
exec @err=sp_oacreate 'adodb.connection',@obj out
if @err<>0 goto lberr


exec @err=sp_oamethod @obj,'open',null,@constr
if @err<>0 goto lberr


--创建表的SQL
declare @tbname sysname
set @tbname='##tmp_'+convert(varchar(38),newid())
set @sql='select * into ['+@tbname+'] from('+@sqlstr+') a'
exec(@sql)


select @sql='',@fdlist=''
select @fdlist=@fdlist+','+a.name
,@sql=@sql+',['+a.name+'] '
+case when b.name in('char','nchar','varchar','nvarchar') then
'text('+cast(case when a.length>255 then 255 else a.length end as varchar)+')'
when b.name in('tynyint','int','bigint','tinyint') then 'int'
when b.name in('smalldatetime','datetime') then 'datetime'
when b.name in('money','smallmoney') then 'money'
else b.name end
FROM tempdb..syscolumns a left join tempdb..systypes b on a.xtype=b.xusertype
where b.name not in('image','text','uniqueidentifier','sql_variant','ntext','varbinary','binary','timestamp')
and a.id=(select id from tempdb..sysobjects where name=@tbname)
select @sql='create table ['+@sheetname
+']('+substring(@sql,2,8000)+')'
,@fdlist=substring(@fdlist,2,8000)


exec @err=sp_oamethod @obj,'execute',@out out,@sql
if @err<>0 goto lberr


exec @err=sp_oadestroy @obj


--导入数据
set @sql='openrowset(''MICROSOFT.JET.OLEDB.4.0'',''Excel 5.0;HDR=YES
;DATABASE='+@path+@fname+''',['+@sheetname+'])'


exec('insert into '+@sql+'('+@fdlist+') select '+@fdlist+' from ['+@tbname+']')


set @sql='drop table ['+@tbname+']'
exec(@sql)
return


lberr:
exec sp_oageterrorinfo 0,@src out,@desc out
lbexit:
select cast(@err as varbinary(4)) as 错误号
,@src as 错误源,@desc as 错误描述
select @sql,@constr,@fdlist


来源:网络







添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.