Chinaunix首页 | 论坛 | 博客
  • 博客访问: 664817
  • 博文数量: 168
  • 博客积分: 2928
  • 博客等级: 中校
  • 技术积分: 1904
  • 用 户 组: 普通用户
  • 注册时间: 2010-01-04 09:56
文章分类

全部博文(168)

文章存档

2010年(168)

我的朋友

分类: Oracle

2010-04-12 22:49:26

此方法比一般的导库方法快很多

步骤1:

创建一个.bat批处理文件,文件中包含如下的批处理语句:

bcp db2..tablename(表名)           out  .\hisall-out\hisclientloginlog.out         -Usa  -P123456 -S. -c -t {{{}}}  >>out.txt

解释:
bcp:为数据据导出命令

db2..tablename:为sqlserver的数据库名和表名

out  .\hisall-out\hisclientloginlog.out         将数据导出以out文件保存在指定的目录下

 -Usa  -P123456                                       用户名和密码

>>out.txt                                                   导库的日志信息放在指定的目录下

步骤2:

上一步完成后再创建另外一个.bat批处理文件,文件中包含如下的批处理语句:

sqlldr  hs_his/handsome@HS2008 control =.\ctl\HISHOLDSINFO.ctl                errors=999999999 log=.\log\HISHOLDSINFO.log                   bad=.\bad\HISHOLDSINFO.bad          >>loadin.txt


 解释:

sqlldr  :数据装载命令

hs_his/handsome@HS2008:ORACLE数据库的用户和服务名

control =.\ctl\HISHOLDSINFO.ctl :在指定的目录下必须要有一个控制文件跟目标表的表结构一致否则导入会报错如:

 load data
infile '.\hisall-out\hisclientloginlog.out'
into table hs_his.hisclientloginlog
append
fields terminated by '{{{}}}'
TRAILING NULLCOLS                                     
(                                                                                  
  FUND_ACCOUNT   ,
  INIT_DATE      ,
  OP_ENTRUST_WAY ,
  OP_STATION     ,
  BRANCH_NO      ,
  LOGIN_TIMES    ,
  LOGIN_TIME     ,
  LOGOUT_TIME    ,
  ONLINE_TIME    ,
  FAIL_LOGIN     ,
  FAIL_LOGINX   
)            

 log=.\log\HISHOLDSINFO.log:导入数据的详细日志

bad=.\bad\HISHOLDSINFO.bad:导入失败的数据保存到此目录下        

>>loadin.txt:整个导入过程的一提示信息

阅读(1651) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~