首页 > 解决方案 > 如何使用 sql loader 将 10k 以上的字符加载到单个 oracle 库

问题描述

我正在将来自 cassandra 的数据作为文件假脱机。列是

Id | text_file
---------------
1   JSON string (13000 characters string)

我必须将此数据加载到 oracle 表中。我的 oracle 表结构和 ctl 文件格式应该是什么。

标签: oracleoracle11goracle-sqldevelopersql-loader

解决方案


您可以为此使用SQL 加载器。我假设您的文件包含两个字段。一个是Id,另一个是text_file,你想加载它

LOAD DATA
INFILE '<filepath>'
TRUNCATE -- see oracle docs for more options here
INTO TABLE <YOUR_TABLE_NAME>
fields terminated by '|'
(
  ID,
  text_file CHAR(13000) -- Size needs to be mentioned here if it is more than 255 characters
)

默认情况下,SQL 加载器的缓冲区为 255 个字符,但您可以使用示例中提到的 CHAR(n) 来更改它。

然后使用执行此控制文件

sqlldr control=<aforementioned_file_path>

干杯!!


推荐阅读