我正在开发一个以 Oracle 作为数据库的 C++ 应用程序,并尝试使用 CLOB 数据类型获取数千条记录。
一直在网上搜索如何在 OCCI 中预取 CLOB 数据类型,但总是看到“如果 LONG、LOB 或不透明类型列(例如 XMLType)是查询的一部分,则预取无效”。
OCCI 中有没有办法预取 CLOB 或者是否有其他替代解决方案来缩短获取 CLOB 数据所花费的时间?
谢谢您的帮助。
有一种方法可以做到这一点,我们大量使用它来优化跨 WAN 加载具有 CLOB 列的表
不要将数据作为 CLOB 列获取,而是将其转换为varray(16)
of varchar(32767)
select clob_to_str_array(clob_column) from table_name;
OCCI 将返回给您vector < std::string >
在这种情况下。通过这种方法,我们将加载时间从 15 分钟缩短至不到 10 秒
我认为这是我有史以来最好的优化之一,但我这样做只是因为为时已晚,无法避免 CLOB
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)