mssql server 导入oracle的方法之一
来源:互联网 发布:电子数据交换技术ppt 编辑:程序博客网 时间:2024/06/05 00:13
一、采用bcp导出为文本文件,sqlldr导入Oracle的方式
1.导出数据
bcp {[[database_name.][owner].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-m max_errors] [-f format_file] [-x] [-e err_file]
[-F first_row] [-L last_row] [-b batch_size]
[-n] [-c] [-N] [-w] [-V (70 | 80 | 90 )]
[-q] [-C { ACP | OEM | RAW | code_page } ] [-t field_term]
[-r row_term] [-i input_file] [-o output_file] [-a packet_size]
[-S server_name[\instance_name]] [-U login_id] [-P password]
[-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]
bcp Sourcedb.dbo.inneruser out "文件路径" -S"实例名" -U用户名 -P"密码" -c -e"D:\inneruser.err" -t";" -r";\n"
-t 指明字段分割符 -r 指明 换行符
2.拷贝文件到oracle服务器目录下。
3.创建控制文件
load data
infile '/opt/oradata/inneruser.dat'
into table inneruser
append
fields terminated by ';'
(InnerUserID,WorkID,UserName,"Password",Kind,isValid,"Level",IsOnline,GroupID,DepartmentID,CTime"to_date(substr(:CTime,0,19),'yyyy-mm-dd hh24:mi:ss')" ,UTime"to_date(substr(:UTime,0,19),'yyyy-mm-dd hh24:mi:ss')",YWBH_C,IsLeader,TeamID,RtxAccount)
表中有特殊字段时,用"",日期字段指定日期格式。报错时可以查看对应目录下的log文件
(1)append 表示表中有数据,加在后面
(2)INSERT 表示装入空表,有数据则停止。默认值
(3)REPLACE 原先表中如果有数据,会被删除
(4)TRUNCATE 如果要载入的数据与现在的数据相同,载入的数据替换现存的数据。
4.导入
sqlldr 用户名/密码@全局数据库 control=/opt/oracle/inneruser.ctl
--报错,字段类型错误
Commit point reached - logical record count 62
通常为日期字段,请参照上面的指定日期格式。
Oracle Sql Loader中文字符导入乱码的解决方案
服务器端字符集NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
控制文件ctl:
LOAD DATA
CHARACTERSET ZHS16GBK
INFILE 'c:\testfile.txt'
id name desc
FIELDS TERMINATED BY ","
(id,name ,desc )
导入成功
其中c:\testfile.txt文件中有中文,在将此文件导入到oracle数据库中时,需要设置字符集CHARACTERSET ZHS16GBK
(1)查看服务器端字符集
通过客户端或服务器端的sql*plus登录ORACLE的一个合法用户,执行下列SQL语句:
SQL > select * from V$NLS_PARAMETERS
------------------------
(2)控制文件ctl:
LOAD DATA
CHARACTERSET ZHS16GBK
INFILE '/inffile/vac/subs-vac.csv'
TRUNCATE
INTO TABLE INF_VAC_SUBS_PRODUCT
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
TRAILING NULLCOLS
(
USER_NUMBER,
PRODUCT_ID,
EFFECTIVE_DATE DATE "YYYY/MM/DD HH24:MI:SS",
EXPIRATION_DATE DATE "YYYY/MM/DD HH24:MI:SS"
)
- mssql server 导入oracle的方法之一
- 分享MSSQL、MySql、Oracle的大数据批量导入方法及编程手法细节
- 快速将excel导入到MSsql的方法
- Oracle,MySQL,MSSQL Server和Access数据库的统计函数
- oracle导入数据的方法
- SQL Server 2005 Express 数据库导入到 oracle 10g的方法
- sql server 2005 和 oracle数据库导入的方法及差异
- MSSQL数据导入导出基本方法
- SQL Server数据导入到Oracle中的方法
- SQL Server数据导入到Oracle中的方法
- 大规模数据 从SQL SERVER导入到ORACLE方法
- 将access导入SQL server 的方法
- MSSQL Server数据的完整性
- MSSQL之一 数据库系统简介 与SQL Server 2008概述
- C#开发的高性能EXCEL导入、导出工具DataPie(支持MSSQL、ORACLE、ACCESS,附源码
- SSIS操作MSSQL的千万级数据导入到Oracle数据库
- 跨越Oracle和MSSQL关系数据库开发 -- 02 Oracle和MSSQL返回结果集区间的方法
- C#导入Excel方法之一
- Linux 0.12 OS. math - add.c
- Android学习笔记之AndroidManifest.xml文件解析
- shell脚本监控监听器进程
- CSS中Backgroud-position(背景图片)定位问题详解
- Assert(断言实现机制剖析)
- mssql server 导入oracle的方法之一
- 以前攒的一些函数,都是用来抓网页做分析的,有可能有失效的,凑合看吧
- 框架搭建之二--引入SDWebImage
- 计算当天起始点和结束点时间戳 去当天的数据
- 项目安排
- 本地存储(html5的localStorage和ie的userData)微博回填功能
- 关于结构体字对齐—BMP文件图像处理程序
- apk破解工具介绍与使用
- 第三讲配置解析器和建立BIND