如何将 CLOB 变量数据分配给 Varchar2 列



如何将具有长度为 4708 个字符的 CLOB 数据类型的 table1 列 1 中的数据插入到 varchar2(4000( 的表 2 列 2 中?

提前谢谢你。

好吧,4708到4000不会去。所以你需要修剪它。

insert into table2 (column2)
select dbms_lob.substr( column1, 4000, 1 )
from table1

在 oracle <12 中没有其他选择,您必须按照@APC所说的将 clob 修剪到 4000。

在oracle 12.++中,您可以use extended data type.并将 varchar 的最大长度限制从 4000 更改为 32767。从standard切换到extended是单向操作。max_string_size。

在此之后,您可以简单地从一个表插入到另一个表。

最新更新