数据库入库的方式实现

        第一种方式,insert方式。该种方式简洁暴力,需要对每个字段的值进行解析获取。如果采用一条一条插入的话,效率非常慢,稍微好一点的话,批量插入。当数据量不大的时候,采用该种方式影响不大。而且当某些记录插入失败,不影响其他的话,采用该种方式可以实现。

     第2种方式,sqlldr,按照某种格式的文件编排入库,对于大数据量,绝对是福音。建议采用该种方式,简单,容易掌握,几百万的数据都不在话下!语法如下:

         sqlldr userid=%s/%s@%s log=%s errors=9999999 data=%s control=%s direct=n rows=%d

        userid为用户名/密码@连接串 log为入库的日志,errors为错误数,data为入库的数据文件,control为入库的控制文件.  

控制文件例子:

      load data
infile "./call.txt"
Append
into table ticket_mm_item
fields terminated by '|'
trailing nullcols
(
        TICKET_ID "SEQ_TICKET_ID.nextval",             
        SERV_ID    ,
        ACC_NBR    ,           
        IMSI        ,  
        BILLING_CYCLE_ID,
        ACCT_ITEM_TYPE_ID,
        CHARGING_ID,
        APN,
        START_TIME       Date 'yyyy/mm/dd hh24:mi:ss', 
        END_TIME        Date 'yyyy/mm/dd hh24:mi:ss',  
        DURATION,      
        FLOWS, 
        CHARGE,
        FAVO_CHARGE,   
        FILE_NAME,     
        CLOSING_CAUSE,
        DEAL_TIME       Date 'yyyy/mm/dd hh24:mi:ss'
)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值