2

我们有一个报告(简单文本)存储在 Oracle 中,平均案例将少于 4K,但有些案例超过了。所以一个选择是使用 CLOB。它仅用于记录目的,不用于查询或更新。只插入一次,退出几次。

空间和整体架构(其他表)性能是主要关注点。

我阅读了有关 CLOB 存储分配格式的信息。

我们正在考虑使用 2 列,msgV varchar2(4000) 和 msgC CLOB。当文本超过 4k 时,我们将存储到 CLOB 中,否则通常使用 varchar2 并且 CLOB 保持为 NULL。

所以我的问题是,

  1. 这个方案是更好地考虑上述性能还是简单地使用 CLOB ?(除了它需要更多的编码工作来维持这种情况)

  2. NULL 和 Empty CLOB(或任何数据类型)占用的空间是多少?

4

1 回答 1

1

使用块。如果 clob 中的数据小于 4000 字节,它实际上将被内联存储。请参阅下面链接中有关 LOB 与 LONG 比较的部分。

甲骨文

于 2012-05-13T16:20:06.970 回答