Sql Server通过BCP数据导出Excel
1.1. bcp的主要参数介绍
-- 这里是创建一个临时表
SELECT *
INTO TempCOrder
FROM ( SELECT '账号' a , '签约银行' b ,'子账号' c , '类型' d , '金额' e , '出入时间' f --这里是因为导出的时候Excel表没有列,这里采用union all为表增加一个列标题
UNION ALL
SELECT u.userName ,
CASE c.ConBankType
WHEN '2' THEN '农业银行'
WHEN '1' THEN '华夏银行'
END back ,
c.subuser ,
CASE f.reason
WHEN '3' THEN '库存结算'
WHEN '4' THEN '银行入金'
WHEN '5' THEN '银行出金'
WHEN '6' THEN '手工调账'
END reason ,
CONVERT(VARCHAR(24), f.changevalue) ,
CONVERT(VARCHAR(24), f.opertime, 121)
FROM dbo.Fund_Change f
INNER JOIN dbo.Trade_User u ON f.userId = u.userId
INNER JOIN dbo.Trade_FundInfo c ON f.userId = c.userId
WHERE u.[state] = '1'
AND c.[state] = '2'
AND f.opertime BETWEEN @BeginDate
AND @EndDate
+ @AgentId
AND f.reason IN ( '3', '4', '5', '6' )
UNION ALL --数据查询
SELECT '总计:' ,
'' ,
'' ,
'' ,
CONVERT(VARCHAR(24), SUM(f.changevalue)) changevalue ,
''
FROM dbo.Fund_Change f
INNER JOIN dbo.Trade_User u ON f.userId = u.userId
INNER JOIN dbo.Trade_FundInfo c ON f.userId = c.userId
WHERE u.[state] = '1'
AND c.[state] = '2'
AND f.opertime BETWEEN @BeginDate
AND @EndDate
+ @AgentId
AND f.reason IN ( '3', '4', '5', '6' ) --为表最后增加一个合计
) a
--3.用BCP命令导出到指定的文件夹下
SET @sqlCmd = 'bcp JinTong_JYRJ.dbo.TempCOrder out F:\' + @ReportFile + ' -c -U"jintongjy" -P"jtjiaoyirj!"' ;
EXEC master..xp_cmdshell @sqlCmd ;
IF EXISTS ( SELECT *
FROM sys.tables
WHERE name = 'TempCOrder' )
DROP TABLE TempCOrder ;
SET @Result = '资金变动报表查询成功' ;
RETURN 0 ;
END TRY
BEGIN CATCH
SET @Result = '资金变动报表查询失败' ;
IF EXISTS ( SELECT *
FROM sys.tables
WHERE name = 'TempCOrder' )
DROP TABLE TempCOrder ;
RETURN 1 ;
END CATCH
END
Sql Server通过BCP数据导出Excel的更多相关文章
- SQL Server 2012 数据库数据导出为脚本
转自:http://blog.csdn.net/ituff/article/details/8265822 将高版本的的SQL Server数据库移到低版本的SQL Server是一件十分蛋疼的事,最 ...
- SQL Server 2008将数据导出为脚本
之前我们要将一个表中的数据导出为脚本,那么只有在网上找一个导出数据的Script,然后运行就可以导出数据脚本了.现在在SQL Server 2008的Management Studio中增加了一个新特 ...
- (转)SQL Server 2008将数据导出为脚本 [SQL Server]
之前我们要将一个表中的数据导出为脚本,那么只有在网上找一个导出数据的Script,然后运行就可以导出数据脚本了.现在在SQL Server 2008的Management Studio中增加了一个新特 ...
- 【转载】SQL Server 2012将数据导出为脚本详细图解
前记: 从SQL SERVER 2008开始,我们就可以很方便的导出数据脚本,而无需再借助存储过程,但是SQL Server 2012和SQL Server 2008的导出脚本的过程还有一点细微的差别 ...
- SQL Server 2008将数据导出为脚本 [SQL Server]
之前我们要将一个表中的数据导出为脚本,那么只有在网上找一个导出数据的Script,然后运行就可以导出数据脚本了.现在在SQL Server 2008的Management Studio中增加了一个新特 ...
- SQL Server中bcp命令的用法以及数据批量导入导出
原文:SQL Server中bcp命令的用法以及数据批量导入导出 1.bcp命令参数解析 bcp命令有许多参数,下面给出bcp命令参数的简要解析 用法: bcp {dbtable | query} { ...
- SQL Server服务器上需要导入Excel数据的必要条件
SQL Server服务器上需要导入Excel数据,必须安装2007 Office system 驱动程序:数据连接组件,或者Access2010的数据库引擎可再发行程序包,这样就不必在服务器上装Ex ...
- SQL Server高速导入数据分享
SQL Server高速导入数据,能够尝试的方法例如以下:CTE.OpenRowSet/OpenDataSource.BULK INSERT.bcp.Shell. 以下依次介绍这几种办法. 1.CTE ...
- SQL Server 2012大数据导入Oracle的解决方案
在实际工作中需要把SQL Server中的表导入Oracle.之前尝试过直接用SQL Server的DTS进行都没问题.但这次因为数据量在千万级所以报虚拟内存不足.最后通过SQL Server导出tx ...
随机推荐
- 问题-Delphi控件选择卡自动选择与滚动方法
问题现象: 在D7的控件工具条中每次要手动点向左向右很累,有没有方法可以自动移动. 问题解决: REGEDIT4 [HKEY_CURRENT_USER\Software\Borland\Delph ...
- ECshop模板机制
ECshop模板机制整理 模板机制 近期新项目涉及到ECshop的二次开发,趁此良机正好可以对闻名已久的ECshop系统进行深入了解.要了解一个系统,那么该系统的模板机制就是最重要的一环.相关整理如下 ...
- Float(浮动)
一.什么是浮动? CSS 的 Float(浮动),会使元素向左或向右移动,其周围的元素也会重新排列. 二.浮动元素的特点 元素浮动后会自动变成行块元素 浮动元素的父元素高度宽计算将忽略浮动子元素 浮动 ...
- Css基础-id选择器
id 选择器以#来定义 <p id="pid">Hello css</p> #pid { color:red; } <div id="div ...
- android应用程序fps meter[帧数显示]的分析 —— 浅谈root的风险 (3)
上节已经详细说了下注入过程,最后寄生进程在宿主进程中下了个蛋,这下完的蛋有什么作用呢?接下来再具体分析一下. lib0的感染过程分析 对于本例注入的so动态库,首先看一下so的符号: $ readel ...
- tomcat 虚拟目录与显示目录中文件列表
虚拟目录: 该方法推荐使用,比较简单. 在%tomcat%\conf\Catalina\localhost(该目录可能需要手工创建)下新建一个文件abc.xml,注意文件名中的abc就表示虚拟目录的名 ...
- 并发与同步 (一) ThreadLocal与Synchronized 用哪一个好
ThreadLocal是什么? 历史 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路.使用这个工具类可以 ...
- [置顶] MySQL Cluster初步学习资料整理--安装部署新特性性能测试等
1.1 mysql-cluster简介 简单的说,MySQLCluster实际上是在无共享存储设备的情况下实现的一种完全分布式数据库系统,其主要通过NDBCluster(简称NDB)存储引擎来实现. ...
- protocol buffer的简单使用
protocol buffer是一个高效的结构化数据存储格式,用来结构化数据的序列化与反序列化.目前支持java.c++.Python 相对于json而言: 数据量跟小 其他的还没看出什么优势 下载地 ...
- ios十进制、十六进制字符串,byte,data等之间的转换
十进制->十六进制 Byte bytes[]={0xA6,0x27,0x0A}; NSString *strIdL = [NSStringstringWithFormat:@"%@& ...