Fem*_*ale 7 sql clob oracle11g
我正在制作一个存储XML的表.要存储XML,我使用的是CLOB数据类型.我的XML的最大大小为5kb.我应该在创建表时定义CLOB列的大小?
Daz*_*zaL 11
在设置clob时不会完全定义大小(与varchar不同).这很简单clob.
吊球的最大尺寸为4Gb.
存储方面,它将使用如下空间:
在创建lob列时,您可以指定其storage子句来控制行内和行外选项,如下所示:
LOB (c) STORE AS lobseg (DISABLE STORAGE IN ROW CHUNK 16384)
Run Code Online (Sandbox Code Playgroud)
即,这将指定lob永远不会与常规表数据一起存储,并将以每块16kb的倍数分配存储,因此即使您的文档是1kb,也需要16kb的存储空间.
如果您的xml文档只有5kb,您可能需要考虑行内存储,并放一个小块大小(最小块大小为1块,所以如果你有一个4kb范围的表空间,你的最小块大小将是4kb ;如果指定less,则会被忽略).允许行内凸起的缺点是表格会更大,因此大范围扫描可能会受到一些影响(但是检索更快).
同样在11g中你可以选择压缩你可能想要考虑的高分段(如果你的许可涵盖它).虽然有这么小的文件,你可能不会受益匪浅.
在这里阅读更多内容:http://docs.oracle.com/cd/B28359_01/appdev.111/b28393/adlob_tables.htm