db2 有一个表中有clob字段 drop这张表可以降表空间80g 但是手动delete fro

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2 有一个表中有clob字段 drop这张表可以降表空间80g 但是手动delete fro相关的知识,希望对你有一定的参考价值。

db2 有一个表中有clob字段 drop这张表可以降表空间80g 但是手动delete from table降表空间的使用率很少。
这是为什么?应该怎么删除clob字段类型的数据?

delete 不会降低表空间使用的高水位标志,也就是你看到的使用率,但空间已经可以使用。使用truncate table 可以实现表空间使用率的降低。

Good Luck !
参考技术A drop哈哈

在 Oracle DB 的 CLOB 字段中存储文件

【中文标题】在 Oracle DB 的 CLOB 字段中存储文件【英文标题】:Storing Files in Oracle DB's CLOB field 【发布时间】:2011-08-24 03:06:46 【问题描述】:

我的 oracle 表中有一个具有 CLOB 数据类型的列。 如何在此列中存储 .txt 文件以及如何检索相同的文件?

下面是表定义

fileID  Number
logFile CLOB

提前致谢

【问题讨论】:

您还使用什么和/或 API 来插入和检索数据?您在寻找 PL/SQL 解决方案吗? SQL*加载器? JDBC?还有什么? 我正在寻找 PL/SQL 解决方案 好的。您尝试加载的文件存在于数据库服务器上,对吧? 【参考方案1】:

在 PL/SQL 中将文件加载到 CLOB 中非常简单——您只需要使用 DBMS_LOB.LoadCLOBFromFile procedure

CREATE DIRECTORY file_dir
    AS <<path on database server file system>>;

GRANT read, write
   ON file_dir
   TO your_user_name;

DECLARE
  l_src_file bfile := BFileName( 'FILE_DIR', <<name of file>> );
  l_dest_lob clob;

  l_dest_offset  integer := 1;
  l_src_offset   integer := 1;
  l_lang_context number := dbms_lob.default_lang_ctx;
  l_warning      number;
BEGIN
  dbms_lob.open( l_src_file, dbms_lob.lob_readonly );

  INSERT INTO some_table( fileID, logFile )
    VALUES( fileIDSeq.nextval, empty_clob() )
    RETURNING logFile 
         INTO l_dest_lob;

  dbms_lob.LoadCLOBFromFile( 
              dest_lob     => l_dest_lob,
              src_bfile    => l_src_file,
              amount       => dbms_lob.getLength( l_src_file ),
              dest_offset  => l_dest_offset,
              src_offset   => l_src_offset,
              bfile_csid   => dbms_lob.default_csid,
              lang_context => l_lang_context,
              warning      => l_warning );

  dbms_lob.close( l_src_file );
END;
/

再次将文件从 CLOB 写入文件系统有点复杂。我会使用类似 Tom Kyte 的 clob_to_file procedure

【讨论】:

你不应该只说这个而不解释如何派生它“>”绝对不是“很容易”。 @PhilipRego - 我不确定“如何推导出它”是什么意思。 &lt;&lt;path on database server file system&gt;&gt; 可以是您想要的任何路径,没有您需要派生的“神奇”路径。它是您要加载的文件在服务器文件系统上的任何位置。

以上是关于db2 有一个表中有clob字段 drop这张表可以降表空间80g 但是手动delete fro的主要内容,如果未能解决你的问题,请参考以下文章

db2 我先DROP掉一张表,再重建,再LOAD数据进这张表,之后对这个表做UPDATE操作很慢,这是为啥

想写一个DB2触发器,几张表有关联,修改其中一张主表中的某一个字段,其他关联表中的该字段也跟着联动修改

在sqlserver中有一张表,表中有一字段用来记录 录入数据的时间,怎样判断表中的数据是当前月份录入的

oracle varchar2 为啥改不成clob

DB2中如何将一个clob类型的字段改为varchar类型

查询一张表中有重复字段的记录