2016-09-28 139 views
0

任何人都可以请指导我如何计算明智地存储在我的oracle数据库中的XMl文件行的大小。有一列CLOB类型存储完整的XML。Oracle数据库中的行数据大小计算

我也在Google上搜索过,但它在dbms_lob.getlength(REQUEST_DATA)上导航,我相信这是返回XML长度(字符数)而不是它的大小。

+1

是什么长度和大小之间的关系,你有什么区别?你只是在查找字节大小而不是字符大小(知道字节大小会根据字符集而变化)? –

+0

我明白,字节大小和字符大小是两个不同的参数,大小与文件中字符的数量成正比。所以我想推断xml在内存中消耗的字节大小......另外,知道oracle如何将xml与所有元数据一起存储起来,这会非常有趣,所以它会定义增加xml的实际大小存储在数据库中......我希望这是有道理的...... –

回答

0

这是足以让你:

select dbms_lob.getlength(YOUR_COLUMN)/1000000 MegaByte from YOUR_TABLE 
+0

托马斯,感谢您的建议,但其所有记录返回4000字节.... –

+0

@Tomas:如果内容有更多4000字节,那么它只会考虑前4000个字节。因此它只会提供部分数据的结果。 – hemalp108

+0

好的....我编辑了我的答案 – tomas