`

关于 Oracle 的数据导入导出及 Sql Loader (sqlldr)

 
阅读更多

我使用的  insert into 更新表中查询到的数据

 

使用的 DBLINK 查询源数据表

 

INSERT INTO tb_demo SELECT * FROM tb_demo@DDD.REGRESS.RDBMS.DEV.US.ORACLE.COM where iyear=2011 and imonth=8 and flag=0 

 

考虑到更新后, 表中最大的 SEQUENCE 可能重复的问题, 编辑了各表的 SEQUENCE值。 

 

如果必须使用自身数据库的 SEQUENCE 值, 可考虑增加辅助字段。 OLDID 记录原始的主键值。

 

关联表 UPDATE SIM_TRAING_SIM M set SUITE_ID = (SELECT S.ID FROM SUITE S WHERE S.OLDID=M.SUITE_ID) WHERE M.AC_TYPE_CODE=14 AND ...........

 

实际测试通过的SQL:

 

 

CREATE table wu_t_suite as select SEQ_SIM_BIG_SUITE.NEXTVAL BIG_SUITE_ID, T.BIG_SUITE_ID BIG_SUITE_ID_LK, 
T.BIG_SUITE_NO, T.AC_TYPE_CODE, T.FIXED_YEAR from sim_big_suite@DBLINK_CRS_234 T WHERE T.BIG_SUITE_ID BETWEEN 1415 AND 1420

CREATE table wu_t_simsuite as select SEQ_SIM_OPERATE_LOG.NEXTVAL SUITE_ID, T.BIG_SUITE_ID, 
T.SUITE_NO, T.AC_TYPE_CODE, T.FIXED_YEAR from sim_suite@DBLINK_CRS_234 T WHERE T.BIG_SUITE_ID BETWEEN 1415 AND 1420

UPDATE wu_t_simsuite t SET t.big_suite_id = (SELECT b.big_suite_id FROM wu_t_suite b WHERE b.big_suite_id_lk = t.big_suite_id) 

 

 

http://blog.sina.com.cn/s/blog_6239341c0100j9zv.html

 

 

sqlldr 可以导入数据量比较大的CSV文件,比PLSQL的TEXTIMPORT效率高很多。

实测92118330条数据约半小时。

 

ldr_object.ctl控制文件:

load data
infile "F:\2017platstatic\data.csv"
truncate into table PAX_TICKET_TEMP
fields terminated by "," optionally enclosed by ' ' TRAILING NULLCOLS
(TICKET_NO,
PAX_ID_NO,
PAX_ID_TYPE,
created "to_date(:created,'yyyy-mm-dd hh24:mi:ss')",
status  "trim(:status)"
)

命令格式:

sqlldr 用户名/密码@//172.**.***.***:端口/服务名 control=D:\oracleexp\sqlldr\ldr_object.ctl bad=D:\oracleexp\sqlldr\ldr_object2.bad log=D:\oracleexp\sqlldr\ldr_object2.log skip=0 errors=9999 rows=5000 bindsize=20971520 readsize=20971520

参考连接:

https://www.cnblogs.com/jyzhao/p/4819884.html

 

 



 

 

 

  • 大小: 28.9 KB
分享到:
评论

相关推荐

    windowns下利用bat命令+oracle的sqlldr功能导入数据

    4. **运行批处理**:双击批处理文件或通过命令行执行,启动SQL*Loader并导入数据。 5. **查看结果**:导入完成后,通过日志文件和错误文件检查导入状态,了解成功记录数、失败记录及原因。 **四、优化技巧** 1. *...

    利用 sqluldr2导出数据 使用sqlldr导入数据 通过merge into 合并更新数据

    2. SQL*Loader导入数据: SQL*Loader是Oracle用于将数据从外部文件加载到数据库的工具。它的使用流程与SQLULDR2类似,但方向相反: - 创建控制文件,定义要导入的表结构、字段映射等。 - 运行SQL*Loader命令,...

    oracle数据导入导出大全

    在Oracle数据库管理中,数据导入和导出是至关重要的操作,尤其对于数据迁移、备份、恢复和数据分析等任务。Oracle提供了多种工具和技术来实现这些功能,确保数据的安全性和完整性。以下将详细介绍标题“Oracle数据...

    利用sqlloader将 excel 数据导出到 oracle 数据库中.rar

    本教程将详细介绍如何使用SQLLoader将Excel数据导出到Oracle数据库。 首先,我们需要理解SQLLoader的工作原理。SQLLoader通过读取控制文件(.ctl文件),这个文件包含了数据加载的规则和配置,如字段的定义、数据...

    Windows版oracle10g精简客户端(带sqlldr)

    Windows版的Oracle 10g客户端是专为在Windows操作系统上运行而设计的,它提供了连接到Oracle服务器、执行SQL查询、数据导入导出等功能。在这个"Windows版oracle10g精简客户端(带sqlldr)"中,我们主要关注两个关键...

    Oracle数据库导入导出方法

    首先,SQL*Loader是Oracle提供的一种高效的数据加载工具,它可以将外部数据快速地导入到Oracle数据库中。使用SQL*Loader的前提是目标表已经在数据库中创建。基本流程包括创建一个控制文件(.ctl文件),该文件定义了...

    数据导入导出

    Oracle提供了一系列工具和技术,使得用户能够高效地从外部源导入数据,或者将数据库中的数据导出到其他存储介质或系统。在这个过程中,数据的完整性和一致性是至关重要的,因为错误的数据导入导出可能导致数据丢失或...

    oracle自动导入数据

    除了SQL*Loader,还有其他方法可以实现Oracle数据导入,例如使用Oracle SQL Developer Data Pump,这是一个图形界面工具,提供了更直观的导入导出体验。此外,如果你的环境支持,也可以考虑使用ETL(提取、转换、...

    oracle数据导出工具sqluldr2

    4. **数据转换**:在导入数据时,SQL*Loader 可以进行数据类型转换,例如字符串转日期、数值等,同时支持用户自定义的转换函数。 5. **并行加载**:通过多线程或多进程并发加载,SQL*Loader 能够进一步提升导入性能...

    Oracle数据导入方法

    - **PL/SQL程序**:通过编写自定义的PL/SQL脚本来导入数据,适合复杂的数据转换需求。 - **第三方工具**:如ETL工具(如Informatica, Talend)可实现更复杂的数据迁移、清洗和转换。 **4. Oracle企业管理器的数据...

    spool导出与sqlldr导入

    SQL*Loader是Oracle提供的一个快速数据加载工具,可以从文本文件批量导入数据到数据库中。它通过控制文件(如"InputLost.ctl")定义数据格式和加载规则。控制文件的基本结构包括以下部分: - **LOAD DATA**:声明...

    oracle不同用户名及表空间之间的数据导入

    然后,在目标环境使用IMPDP导入数据,同时可能需要进行表空间映射。例如: ``` impdp 用户名/密码 directory=DATA_PUMP_DIR dumpfile=data.dmp logfile=impdp.log remap_tablespace=源表空间:目标表空间 ``` 2....

    Oracle数据库文件的导入导出

    expdp用于导出数据,impdp用于导入数据。 - expdp命令示例: ```bash expdp username/password@database directory=DIR_NAME dumpfile=data.dmp logfile=expdp_log.log ``` - impdp命令示例: ```bash impdp ...

    oracle sqlloader使用指南

    Oracle SQL*Loader 是一个强大的工具,用于快速地将大量数据从外部文件批量导入到Oracle数据库中。这个工具提供了多种选项和灵活性,使得数据装载过程能够适应各种不同的数据格式和需求。下面我们将深入探讨如何使用...

    sqlloader的成功案例

    在IT领域,尤其是在数据库管理与数据导入导出技术中,Oracle SQL*Loader是一个非常重要的工具。SQL*Loader的成功案例不仅展示了其高效的数据加载能力,还体现了它在处理大量数据时的灵活性与可靠性。本文将根据提供...

    通过sqlloader将csv中文件写入数据库中

    在提供的压缩包`sqlLoader`中,可能包含示例的控制文件和数据文件,你可以按照上述步骤进行操作,以实际操作来加深理解。通过实践,你将能够熟练掌握`SQL*Loader`,从而更高效地管理和维护数据库中的数据。

    oracle导入导出工具

    Oracle SQL*Loader是Oracle数据库提供的一种强大的数据导入工具,它能够高效地将大量数据从文本文件批量导入到数据库中。SQL*Loader通过控制文件来指定数据文件格式、字段映射和加载规则,使得数据导入过程更为灵活...

    Oracle SQL Loader的详细语法

    ### Oracle SQL Loader 的详细语法与应用 #### 一、概述 SQL*Loader 是 Oracle 提供的一款强大而灵活的数据加载工具,主要用于将操作系统中的文件数据批量导入到 Oracle 数据库中。相较于其他数据库系统的加载工具...

    oracle快速导出.zip

    Oracle导出工具,通常指的是`expdp`(Data Pump Export),用于从数据库中导出数据和元数据。`expdp`提供了许多高级特性,如并行导出、过滤数据、压缩导出文件等,这些特性使得它成为处理大数据量的理想选择。在...

Global site tag (gtag.js) - Google Analytics