sql怎么导出csv文件(如何导出SQLServer数据到CSV文件呢)
sql怎么导出csv文件(如何导出SQLServer数据到CSV文件呢)sqlcmd -S "127.0.0.1" -U "sa" -P "sa" -d "bigData" -i "C:\Users\Administrator\Desktop\test.sql" -o d:\a.txt 如上,其中C:\Users\Administrator\Desktop\1.sql即存放SQL语句的文件,bigData是库名,d:\a.txt是结果存放文件。在语句中加入-s,可以更改列分隔符字符,默认时为空格。sqlcmd -S"127.0.0.1" -U "sa" -P "sa" -d "bigData" -Q "SELECT * FROM [bigData].[dbo].[list]" -o d:\aaa.txt 或者把脚本统一到一个文件里2)直接使用SQL Server命令行工具,来直接上干货: 先看看,这个命令的各个参数吧: C:\Documents and Set
数据库
在通信行业里,平时都会接触到很多报表,不管是从网管的数据,还是从专业的优化平台,要处理各类的报表数据,所有做个定时报表输出,直接从数据库生成,能减轻不少重复的工作量,也减轻工作压力,那有什么好的方法,网上各种的导成EXCEL方法,都太复杂了,MSSQL可以直接生成TXT,CSV 而且CSV也相当于是EXCEL,对于一个数据经常导来导去的家伙来说,CSV是再好不过了,这个问题,其实是个老生常谈的问题,百度上很多解决方案,这里总结下几种常用的方法:
1)利用工具,这里就直接介绍,我自个常用的数据库工具 Aqua Data Studio,这个工具集成了很多种数据库的,非常好用,而且很亲和力,这个工具导出数据,可以把查询的数据,直接保存数据成文本,或者EXCEL,但是这个有个缺点,不好实现自动化,因此看下一个方法
报表的数据
2)直接使用SQL Server命令行工具,来直接上干货:
先看看,这个命令的各个参数吧:
C:\Documents and Settings\Administrator>sqlcmd -? Microsoft (R) SQL Server 命令行工具 版本 10.50.1600.1 NT INTEL X86 版权所有 (c) Microsoft Corporation。保留所有权利。 用法: Sqlcmd [-U 登录 ID] [-P 密码] [-S 服务器] [-H 主机名] [-E 可信连接] [-N 加密连接][-C 信任服务器证书] [-d 使用数据库名称] [-l 登录超时值] [-t 查询超时值] [-h 标题] [-s 列分隔符] [-w 屏幕宽度] [-a 数据包大小] [-e 回显输入] [-I 允许带引号的标识符] [-c 命令结束] [-L[c] 列出服务器[清除输出]] [-q "命令行查询"] [-Q "命令行查询" 并退出] [-m 错误级别] [-V 严重级别] [-W 删除尾随空格] [-u unicode 输出] [-r[0|1] 发送到 stderr 的消息] [-i 输入文件] [-o 输出文件] [-z 新密码] [-f <代码页> | i:<代码页>[ o:<代码页>]] [-Z 新建密码并退出] [-k[1|2] 删除[替换]控制字符] [-y 可变长度类型显示宽度] [-Y 固定长度类型显示宽度] [-p[1] 打印统计信息[冒号格式]] [-R 使用客户端区域设置] [-b 出错时中止批处理] [-v 变量 = "值"...] [-A 专用管理连接] [-X[1] 禁用命令、启动脚本、环境变量[并退出]] [-x 禁用变量替换] [-? 显示语法摘要]
使用方法:
sqlcmd -S"127.0.0.1" -U "sa" -P "sa" -d "bigData" -Q "SELECT * FROM [bigData].[dbo].[list]" -o d:\aaa.txt
或者把脚本统一到一个文件里
sqlcmd -S "127.0.0.1" -U "sa" -P "sa" -d "bigData" -i "C:\Users\Administrator\Desktop\test.sql" -o d:\a.txt
如上,其中C:\Users\Administrator\Desktop\1.sql即存放SQL语句的文件,bigData是库名,d:\a.txt是结果存放文件。在语句中加入-s,可以更改列分隔符字符,默认时为空格。
例:
sqlcmd -S"127.0.0.1" -U"sa" -P"sa" -d"bigData" -Q"SELECT * FROM [bigData].[dbo].[list]" -s " " -o d:\aaa.txt
好了,这样就能把脚本执行后的结果,直接输出来。
最后呢,于用一下Windows 定时任务,定时从外部执行脚本,并输出文件,再用python 数据处理方法处理导出的数据,这样虽然算不上什么智能,但至少也解放了一点时间。