来自 首页 2019-09-24 23:51 的文章
当前位置: 澳门太阳娱乐手机登录 > 首页 > 正文

使用sql脚本输出交替不同的背景色的html信息的方

 

转自:

转自:http://www.maomao365.com/?p=6679


摘要:

下文将分享应用sql脚本输出交替调换的例外背景颜色的sql脚本的法子分享,如下所示:
实验意况:sqlserver 2009 Wrangler2

摘要:


下文将分享应用sql脚本输出excel的措施
 
此脚本能够利用于 表或视图生成excel的方式,
若需使用sql脚本输出excel数据,大家可将sql脚本生成视图或不时表,

例:
下文 首先使用 over() row_number 函数生成的行编号,
下一场对每行进行颜色变化操作,生成差异的背景观,如下所示:

接下来再输出excel

输出excel语法简介:
exec
master..xp_cmdshell 'bcp [数据库名称].[架构名].[表名] out [excel寄放地点全路径] -c -q -S"服务器Ip" -U "sql用户名" -P "sql密码"'

---例1:
exec 
master..xp_cmdshell 'bcp test.dbo.tableName out d:test.xls -c -q -S"." -U "sa" -P "erp"'
---将数据库test中tablName输出值d盘test.xls文件
---服务器地址.
---sql账户sa
---sql密码erp
--------------------------------------------
例2: 根据动态文件名输出excel的方法
declare @name varchar(30) ---动态文件名
set @name ='d:test123.xlsx'

exec 
('master..xp_cmdshell ''bcp test.dbo.tableName out '+@name+' -c -q -S"." -U "sa" -P "erp"''') ---拼接操作语句,并采用exec执行

注意事项:

*1 使用脚本输出的excel ,无表头
2 可动态文件名和动态sa账户密码生成相关消息
3 就算出口sql脚本的数量至excel,大家需先将sql脚本生成的数目缓存至表中,然后输出表数据至excel

xp_cmdshell相关权力需张开
*

create table test(keyId int,info varchar(30))
go
insert into test(keyId,info)values(10,'测试信息20180625-1')
insert into test(keyId,info)values(20,'测试信息20180626-2')
insert into test(keyId,info)values(21,'测试信息20180628-3')
insert into test(keyId,info)values(81,'测试信息20180620-4')
insert into test(keyId,info)values(92,'测试信息20180608-5')
insert into test(keyId,info)values(101,'测试信息20180605-6')
insert into test(keyId,info)values(102,'测试信息20180606-7')
go


declare @tmp varchar(max)
set @tmp ='<table>'
set @tmp =@tmp+'<tr><td>流水号<td>keyId<td>info</tr>'

select 
@tmp=@tmp+'<tr style=''background-color:'+ case when t.[编号] %2=0 then 'blue' else '' end+'''>'
+'<td>'+ convert(varchar(100),t.[编号])
+'<td>'+ convert(varchar(100),t.keyId)
+'<td>'+t.info
+'</tr>'
from 
(
select row_number() over(order by keyId asc ) as [编号],
keyId,info from test ) as t 


set @tmp =@tmp+'</table>'
select @tmp ---打印生成的html信息 

go
drop table test 

 

本文由澳门太阳娱乐手机登录发布于首页,转载请注明出处:使用sql脚本输出交替不同的背景色的html信息的方

关键词: