解决Oracle clob字段数据过大问题

1 select * from user_lobs where table_name=‘WX_MAIL‘;--SYS_LOB0001313121C00015$$
2 SELECT segment_name AS TABLENAME,BYTES/1024/1024 MB FROM user_segments WHERE segment_name=‘SYS_LOB0001313121C00015$$‘;

WX_MAIL有一个content字段为clob类型,保存了邮件的内容,导致数据过大,平均每个content大小为40K。180多W条数据,数据占了60G容量,

上面的SQL为查询所占容量。为此,解决方案为只保存失败的邮件内容,为了失败重发方便,成功则不再保存发送内容。

时间: 2024-08-03 04:16:31

解决Oracle clob字段数据过大问题的相关文章

探究oracle clob字段是如何存储的

clob字段存储的是文本,如果存储少于4000个字节则clob字段会和记录存放在一起,如果存储超过4000个字节,则不会与记录存放在一起.值得注意的是,这里的4000个字节并不是等同于varchar2(4000),那相当于什么呢,请看下列实验,数据库版本是10.2.0.1.0: drop table test_clob purge; create table test_clob ( id number, clob1  clob ); insert into test_clob values(1,

[python] python 读写Oracle clob类型数据的处理

clob字段是oracle专门用于存储超长字符串的字段类型,一般varchar2只能存4000个字符串,超过4000个就存不下去了. 如果直接使用 pandas.read_sql(sql, conn)会报错,那么如何将clob读取到python中呢? 1.read方法 import cx_Oracle conn = cx_Oracle.connect("user/[email protected]/db") cur = conn.cursor() # col 是clob字段 cur.e

oracle clob字段去除html标签

通过正则表达式的方式去除html标签 [html] view plain copy select regexp_replace(content,'</?[^>]*>|nbsp;|&','') content from T_TEST_CONTENT_CONFIG t order by status_date desc; 原始clob内容: <p><spanstyle="font-family:宋体;">[某某公司]您有一条XX尚未领取!使

解决比较Oracle中CLOB字段问题

解决比较Oracle中CLOB字段问题 Oracle中CLOB和BLOB字段虽说在开发中满足了存放超大内容的要求,但是在一些简单使用中确频频带来麻烦.CLOB中存放的是指针,并不能直接取到实际值.而SQLServer中的text字段就很方便,可以直接拿来与需要的字符串比对,象什么等于呀小于呀Like呀不在话下.可是换成Oracle就麻烦死了,要开辟一个缓存,把内容一段段读取出来后转换,难道写个where条件都这么复杂?经过多方寻求资料,终于发现一个方便简单的方法:利用dbms_lob 包中的方法

解决Druid设置Oracle的Clob字段时的小坑

众所周知,Oracle有很多坑, 所以才有了去IOE. 在使用Druid做数据库连接池后,其实偶尔也会碰到小坑,这就是使用开源项目所必须去填平的.[如果使用不开源的产品,那就不是坑,而是陷阱了,你都不知道怎么去填坑] 用Druid连接池,通过JDBC往Oracle数据库的Clob字段插入数据,或者更新数据时,一个问题出现了. 类似于这样: Caused by: java.lang.ClassCastException: com.alibaba.druid.proxy.jdbc.ClobProxy

Oracle的CLOB大数据字段类型(转)

一.Oracle中的varchar2类型 我们在Oracle数据库存储的字符数据一般是用VARCHAR2.VARCHAR2既分PL/SQL Data Types中的变量类型,也分Oracle Database中的字段类型,不同场景的最大长度不同. 在Oracle Database中,VARCHAR2 字段类型,最大值为4000:PL/SQL中 VARCHAR2 变量类型,最大字节长度为32767. 当 VARCHAR2 容纳不下我们需要存储的信息时,就出来的Oracle的大数据类型LOB( La

【Oracle】给clob字段插入数据

// 插入 //OracleCommand cmd = "insertInto into GIS_PolygonPoint(PCode,PointColl) values('140134', :var)"; // 修改 //OracleCommand cmd = new OracleCommand("update yd_line set coord=:coordstr where lineid=" + LineId.ToString(), conn); string

Oracle如何通过dataLink复制远程数据库的CLOB\BLOB字段数据到本地数据库

Oracle不支持直接通过Database Link复制远程数据库表的CLOB/BLOB字段数据到本地数据库. 像如下的SQL是不能执行的.(ipop_topic表有一个CLOB的字段) insert into ipop_topicselect * from [email protected] where application_id=1000 但是,我们可以借助全局临时表,先把数据复制到临时表,再从临时表转移到你的目的表. create global temporary table ipop_

好记性不如烂笔头18-java对Oracle的CLOB字段的操作

分布式文件系统的发展很快,在Oracle中,LOB(Large Object,大型对象)类型的字段现在虽然用的没有以前那么多了.但是在一些特殊的场合,需要用它保存一些数据量非常大的业务领域(如图象.档案等),还是有不少的市场. LOB类型分为BLOB和CLOB两种:BLOB即二进制大型对象(BinaryLarge Object),适用于存贮非文本的字节流数据(如程序.图象.影音等).而CLOB,即字符型大型对象(Character Large Object),则与字符集相关,适于存贮文本型的数据