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 ...
随机推荐
- HDU5739-Fantasia(tarjan求割点)
题意:给一个无向图n个点1~n,m条边,sigma(i*zi)%(1e9+7).zi是这个图删掉i点之后的价值.一个图的价值是所有连通子图的价值之和,连通图的价值是每个点的乘积. 题解:讲道理这题不算 ...
- Hadoop MapReduce概念学习系列之JobTracker、ResourceManager、Task Tracker、NodeManager(二十一)
Tracker是跟踪者,跟踪器.JobTracker是项目经理.在hadoop2*的0.23版本之后,改叫RM了.ResourceManager.TaskTracker是小组长.它手下,还有具体搬砖的 ...
- BroadcastReceiver学习笔记
1.在代码中注册与在AndroiManifest.xml注册的区别 (a)在代码中注册可以控制注册与注销的时间.比如在onCreate-onDestory, onStart-onStop, onRes ...
- hdu 5586 Sum【dp最大子段和】
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5586 Sum Time Limit: 2000/1000 MS (Java/Others) Me ...
- Android 画图类View与SurfaceView之学习
在开发游戏开发中,android相应的提供了几个重要的模块: 1.显示界面的视图: Android 提供 View 和 SurfaceView 2.控制游戏整体结构: android 提供 Acti ...
- 剑指OFFER之栈的压入、弹出序列(九度OJ1366)
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...
- SAP增强总结-第二代增强(SMOD、CMOD)【转载】
第二代增强比第二代增强安全性提高了很多,第一代增强毕竟是在原标准程序中修改,大部分传递参数都可以直接使用,第二代增强做了一些封装,对用户可以修改的参数做了限制. 1.增强点查找方法 首先根据事物码找到 ...
- navicat for mysql (10038)如何解决,远程无法连接问题
ubuntu server下安装了MySQL 5.5数据库,然后在windows下通过Navicat for MySQL连接时,出现 Can't connect to mysql server on ...
- C#利用lambda表达式将函数作为参数或属性跨类传递
在编码时,由于开始是在winform下进行简单的测试开发的,后来代码多了,就想分到不同的类里边去,可是因为原来的测试是在同一个form下的,所以对于函数调用可以很方便,而一旦跨类之后,就会发现,这函数 ...
- 支持向量机(SVM)算法的matlab的实现
支持向量机(SVM)的matlab的实现 支持向量机是一种分类算法之中的一个,matlab中也有对应的函数来对其进行求解:以下贴一个小例子.这个例子来源于我们实际的项目. clc; clear; N= ...