licharles 发表于 2013-12-19 19:50:18

删除带有BLOB类型字段的表中一条记录

删除带有BLOB类型字段的表中一条记录时,数据库只删除表中记录,而没有删除对应LOBSEGMENT中BLOB字段实际数据,问题是怎样删除LOBSEGMENT中已被删除的数据。
    例如:物理表Table_DOC中有列DOCCONTENT,类型是BLOB,系统将这个字段上的数据存放在类型为LOBSEGMENT中的SYS_LOB0000078224C00005$$中,当删除表Table_DOC中的一条记录时,SYS_LOB0000078224C00005$$的大小没有变,问题是,怎么让SYS_LOB0000078224C00005$$相应的也删除数据。

Liu Maclean(刘相兵 发表于 2013-12-19 20:29:33

在oracle中delete 几乎没有在任何场景让 空间回收的

lunar 发表于 2013-12-21 23:13:12

10.2 :  alter table <table name> modify lob(<lob column name>) (shrink space );

How to determine the actual size of the LOB segments and how to free the deleted/unused space above/below the HWM (Doc ID 386341.1)

licharles 发表于 2013-12-22 20:57:18

lunar 发表于 2013-12-21 23:13 static/image/common/back.gif
10.2 :  alter table  modify lob() (shrink space );

How to determine the actual size of the ...

谢谢lunar!
页: [1]
查看完整版本: 删除带有BLOB类型字段的表中一条记录