当前位置: 代码迷 >> 综合 >> Oracle OCP(57):SQLLDR—CTL文件
  详细解决方案

Oracle OCP(57):SQLLDR—CTL文件

热度:94   发布时间:2024-01-06 06:16:57.0

它可以把一些以文本格式存放的数据顺利的导入到oracle数据库中,是一种在不同数据库之间进行数据迁移的非常方便而且通用的工具。缺点就速度比较慢,另外对blob等类型的数据不方便。

第一部分

LOAD DATA:通常以此为开头,其前可加如下参数:

  • UNRECOVERABLE:表示数据不可恢复
  • RECOVERABLE:表示数据可恢复
  • CONTINUE_LOAD:表示继续添加

第二部分

  • INFILE:表示数据文件位置,如果值为*,表示数据就在控制文件中,本例中没有单独的数据文件,对于大多数加载而言,都会将数据文件与控制文件分离。
  • INTO TABLE tbl_name:tbl_name 即数据要加载到的目标表,该表在你执行 SQLLDR 命令之前必须已经创建。
  • INTO 前还有一些很有意思的参数需要说明;
    • INSERT:向表中插入数据,表必须为空,如果表非空的话,执行 SQLLDR 命令时会报错,默认就是 INSERT 参数。
    • APPEND:向表中追加数据,不管表中是否有数据。
    • REPLACE:替换表中数据,相当于先 DELETE 表中全部数据,然后再 INSERT。
    • TRUNCATE:类似 REPLACE,只不过这里不使用 DELETE 方式删除表中数据,而是通过 TRUNCATE 的方式删除,然后再 INSERT。
  • FIELDS TERMINATED BY “,”:设置数据部分
  相关解决方案