将具有 LONG RAW 列的表中的数据从一个数据库复制到另一个数据库

Posted

技术标签:

【中文标题】将具有 LONG RAW 列的表中的数据从一个数据库复制到另一个数据库【英文标题】:Copy data from table with LONG RAW column from one database to another database 【发布时间】:2015-05-08 07:17:44 【问题描述】:

我需要在 Pentaho Kettle 中创建 JOB 以自动将数据从一个数据库复制到另一个数据库。从包含长原始列的表中复制数据时遇到问题。 我已经尝试过以下列出的事情:

    我使用了复制表向导。但是在复制包含 LONG RAW 列的表时出现错误“ORA-01461:只能绑定 LONG 值以插入 LONG 列”。两个数据库中的表完全相同.

    我已经尝试创建一个 oracle 函数来使用 pl/sql 通过绑定长原始列来插入长原始数据。 我在 PENTAHO 的“执行 sql 脚本”步骤中调用 oracle 函数。 从对偶中选择 function_name(parameter1,parameter2,long raw column,.....)。 但收到错误“字符串文字太长”。

关于如何将大小约为 89330 字节的长原始数据从一个表复制到另一个表的任何建议。

【问题讨论】:

【参考方案1】:

汤姆·凯特写道:

2008 年 8 月 26 日 - 世界标准时间晚上 7 点:

很长的原始数据,不会通过数据库链接发生

(https://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1101164500346436784)

您可以尝试在一个源数据库中创建“临时”表,在其中使用函数TO_LOBLONG RAW 转换为CLOB。 然后您可以将数据传输到目标数据库。

然后,如果您绝对需要LONG RAW 数据类型,您可以使用此处描述的方法进行转换 - Copying data from LOB Column to Long Raw Column

【讨论】:

以上是关于将具有 LONG RAW 列的表中的数据从一个数据库复制到另一个数据库的主要内容,如果未能解决你的问题,请参考以下文章

将一些数据从 sqlite 表复制到具有不同两列的同一个表中

使用元素ui删除具有固定列的表中的垂直线[关闭]

如何使用 SSMA(用于访问 SQL Server)将具有不同列的表迁移到现有表中?

如何从具有唯一列的表中获取行,由另一列决定

如何从sql server中的表中查询json数组类型列的值?

Laravel Raw 语句我可以根据列数据是不是等于另一个表从不同的表中进行选择