数据仓库之抽取数据:通过bcp命令行导入数据
在做数据仓库时,最重要的就是ETL的开发,而在ETL开发中的第一步,就是要从原OLTP系统中抽取数据到过渡区中,再对这个过渡区中的数据进行转换,最后把经过处理的干净的数据加载到数据仓库中。
目标数据库是sql server,通过bcp命令行导入数据。bcp方式相对于其他方式来说,速度更快,是做了优化的。
以下为bcp命令行常用的参数,注意大小写:
-c 以char作为存储类型
-w 和-c类似,只有当使用unicode字符集拷贝数据时使用nchar作为存储类型
-T 用可信连接
-S sql server服务器名称
in 导入数据
out 导出数据
queryout 查询导出数据
-U 用户名
-P 密码
-F 从哪一行开始导入
-L 直到哪一行结束
-f 格式文件
-x 与-f一起使用,用来生产xml格式的格式文件
-t 指定字段分隔符是"\t"
-r 指定行分隔符是"\n"
1、开启即席查询
-
--修改高级参数
-
sp_configure 'show advanced options',1
-
go
-
--允许即席分布式查询
-
sp_configure 'Ad Hoc Distributed Queries',1
-
go
-
--如果配置的值不在合理范围(在最小值最大值范围内),那么可以强制覆盖
-
reconfigure with override
-
go
-
2、导出格式化文件
格式化文件用来指定表的格式,也就是几个字段,数据类型是什么,后面导入、导出数据会用到。
通过导出格式化选项,可以直接导出,不需要我们自己写。
用可信连接登陆:
-
-
bcp wc.dbo.calendar format nul -f c:\calendar.fmt
-
-c -T -S pc0227gry\mssqlserver2008
通过用户名、密码登陆:
-
bcp wc.dbo.calendar format nul -f c:\calendar.fmt
-
-c -Usa -Pxyz -S pc0227gry\mssqlserver2008
3、导出数据文件,可以把远程服务器的数据导出保存为本地的文件
-
bcp wc.dbo.calendar out c:\calendar.txt -f c:\calendar.fmt
-
-c -T -S PC0227GRY\MSSQLSERVER2008
4、导入数据
-
bcp wc.dbo.calendar in c:\calendar.txt -c -f c:\calendar.fmt
-
-Usa -Pxyz -S pc0227gry\mssqlserver2008
数据仓库之抽取数据:通过bcp命令行导入数据的更多相关文章
- t-sql或mssql怎么用命令行导入数据脚本
osql简单用法:用来将本地脚本执行,适合sql脚本比较大点的情况,执行起来比较方便 osql -S serverIP -U sa -P 123 -i C:\script.sql serverIP数据 ...
- PCB MS SERVER 使用bcp命令将数据库数据导出到Excel
在前年工程系统与APS系统对接时,需将工程系统数据导出来给APS,采用的正是bcp命令实现,速度超快. 这里将此命令使用方法整理如下: 一.写SQL将表数据导出到Excel @echo "& ...
- (转)MySQL命令行--导入导出数据库
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Se ...
- MySQL命令行--导入导出数据库
MySQL命令行导出数据库: 1,进入MySQL目录下的bin文件夹:cd MySQL中到bin文件夹的目录 如我输入的命令行:cd C:\Program Files\MySQL\MySQL Se ...
- MySql:mysql命令行导入导出sql文件
命令行导入 方法一:未连接数据库时方法 #导入命令示例 mysql -h ip -u userName -p dbName < sqlFilePath (结尾没有分号) -h : 数据库所在的主 ...
- 命令行导入SQL文件
摘要:把数据库导出为XX.sql格式的数据库文件,导入到另外一个数据库中的时候,总是无法全部导入.及时用mysql的命令界面导入依然是无法全部导入.老师告诉我:在命令行中运行的效率和成功率是最快和最高 ...
- mysql用命令行导入sql文件
前面说到了用navicat工具导入导出数据库,今天给同事导入数据库的时候,发现到不进去,好多错误,情急之下,用命令行导入的 1.打开mysql的服务.cmd-->net start mysql ...
- MYSQL 命令行导入导出数据库文件
MYSQL命令行导入数据库 1.首先通过命令行进入到mysql安装目录的bin目录下,比如我输入的命令为: cd E:\MySQL\MySQL Server 5.5\bin,输入如下命令: mysql ...
- 文件批量加密重命名--python脚本AND mysql命令行导入数据库
在考试中学生交上来的报告,需要进行一下文件名加密,这样阅卷老师就不知道是谁的报告了 在百度帮助下,完成了加密和解密脚本, 加密 #!/usr/bin/python # -*- coding: utf- ...
随机推荐
- HearthBuddy 调试肯瑞托法师寒冰屏障的配合
35疯狂的科学家 63肯瑞托法师 13过期货物专卖商 64对面的英雄术士 比较好的出牌策略是,肯瑞托法师+寒冰屏障 ailoop1 startEnemyTurnSimThread1start prin ...
- css让文字竖着排列 writing-mode 属性
writing-mode 属性 writing-mode 属性定义了文本在水平或垂直方向上如何排布. 语法格式如下: writing-mode: horizontal-tb | vertical-rl ...
- 关于路由跟踪指令---traceroute
我们都用过ping命令来检查主机与目标地址是否连通,自己的主机与目标地址的通讯包通讯速率,所谓的通讯包也就是那些什么TCP/IP,UDP包. 原理:https://www.cnblogs.com/be ...
- List三个子类的特点
List的三个子类的特点 ArrayList: 底层数据结构是数组,查询快,增删慢. 线程不安全,效率高. Vector: 底层数据结构是数组,查询快,增删慢. 线程安全,效率低. Vector相对A ...
- MySQL数据库之主从复制
一)MySQL主从复制的原理 MySQL主从复制是一个异步的复制过程,数据从一个MySQL数据库(master)复制到另一个MySQL数据库(slave),master和slave之间实现主从复制,主 ...
- java导入excel很完美的取值的方法
java导入excel很完美的取值的方法 1.解决方法: /** * 获取单元格数据内容为字符串类型的数据 * @param cell Excel单元格 * @return St ...
- cut截取数据
参考文档 https://blog.csdn.net/caoshunxin01/article/details/79355566 [root@kube-node3 ~]# cat tab_space. ...
- js面向对象写法及栈的实现
function Stack() { this.dataStore = []; this.top = 0; //指向栈顶的位置 this.push = push; this.pop = pop; th ...
- NET-使用Js调用WebService
注:JsWebServiceObject 此类是我做测试示例时为了测试js是否能调用webService中的复合类型而单独新建的一个类 此类中只有名字与年龄的属性. 最近身边的一个朋友做项目,其中有一 ...
- react 问题记录三
7.三元表达式 是否显示提交按钮(值运算用一对大括号包起来): {this.state.isTrue ? <FormItem style={{textAlign: 'right',marginT ...
