Oracle删除字段中的空格、回车及指定字符的实例代码

 更新时间:2017年03月07日 14:41:08   作者:lc19861217  
本文给大家分享Oracle删除字段中的空格、回车及指定字符的实例代码,非常不错,具有参考借鉴价值,需要的的朋友参考下

废话不多说了,直接给大家贴代码了,具体代码如下所示:

create or replace procedure PROC_test is
 --Description:删除字段中的指定字符(回车chr(13)、换行chr(10))
 --By LiChao
 --Date:2016-03-01
 colname varchar(20); --列名
 cnt   number; --包含换行符的列的行数
 v_sql  varchar(2000); --动态SQL变量
begin
 --读取表中的列
 for col in (select column_name
        from user_tab_columns
        where table_name = 'TEMP') loop
  colname := col.column_name;
  --替换换行符chr(10)
  v_sql := 'select count(1) from temp where instr(' || colname ||
       ',chr(10))>0 ';
  EXECUTE IMMEDIATE V_SQL
   into cnt;
  if cnt > 0 then
   v_sql := 'update temp set ' || colname || '=trim(replace(' || colname ||
        ',chr(10),''''))' || 'where instr(' || colname ||
        ',chr(10))>0 ';
   EXECUTE IMMEDIATE V_SQL;
   commit;
  end if;
  --替换回车符chr(13)
  v_sql := 'select count(1) from temp where instr(' || colname ||
       ',chr(13))>0 ';
  EXECUTE IMMEDIATE V_SQL
   into cnt;
  if cnt > 0 then
   v_sql := 'update temp set ' || colname || '=trim(replace(' || colname ||
        ',chr(13),''''))' || 'where instr(' || colname ||
        ',chr(13))>0 ';
   EXECUTE IMMEDIATE V_SQL;
   commit;
  end if;
  --替换'|' chr(124) 为'*' chr(42)
  v_sql := 'select count(1) from temp where instr(' || colname ||
       ',chr(124))>0 ';
  EXECUTE IMMEDIATE V_SQL
   into cnt;
  if cnt > 0 then
   v_sql := 'update temp set ' || colname || '=replace(' || colname ||
        ',chr(124),chr(42))' || 'where instr(' || colname ||
        ',chr(124))>0 ';
   EXECUTE IMMEDIATE V_SQL;
   commit;
  end if;
 end loop;
end PROC_test;
/

以上所述是小编给大家介绍的Oracle删除字段中的空格、回车及指定字符的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

相关文章

  • Oracle分析函数用法详解

    Oracle分析函数用法详解

    本文详细讲解了Oracle分析函数的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • oracle错误代码大全(超详细)

    oracle错误代码大全(超详细)

    本篇文章是对oracle错误代码进行了详细的总结与分析,需要的朋友参考下
    2013-05-05
  • Oracle中BLOB、CLOB的读取和写入方式

    Oracle中BLOB、CLOB的读取和写入方式

    Oracle数据库中,大类型字段(LOB)用于存储大量数据,包括文本、图像、视频等,主要类型有CLOB、BLOB、NCLOB和BFILE,CLOB用于存储大段文本,BLOB用于存储二进制数据,NCLOB适用于多国语言文本,而BFILE存储外部文件的引用
    2024-10-10
  • Oracle 的入门心得 强烈推荐

    Oracle 的入门心得 强烈推荐

    oracle的体系太庞大了,对于初学者来说,难免会有些无从下手的感觉,什么都想学,结果什么都学不好,所以把学习经验共享一下,希望让刚刚入门的人对oracle有一个总体的认识,少走一些弯路。
    2009-05-05
  • Informatica bulk与normal模式的深入详解

    Informatica bulk与normal模式的深入详解

    本篇文章是对Informatica bulk与normal模式进行了详细的分析介绍,需要的朋友参考下
    2013-05-05
  • oracle 会话 死锁 执行sql 执行job的方法

    oracle 会话 死锁 执行sql 执行job的方法

    这篇文章主要介绍了oracle 会话 死锁 执行sql 执行job的方法,需要的朋友可以参考下
    2015-12-12
  • Oracle中sequence(序列)使用方法详解

    Oracle中sequence(序列)使用方法详解

    在oracle中sequence就是序号,每次取的时候它会自动增加,下面这篇文章主要给大家介绍了关于Oracle中sequence(序列)使用方法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • oracle中sql 正则写法详解

    oracle中sql 正则写法详解

    Oracle中使用正则表达式需先使用REGEXP_LIKE函数来匹配字符串。正则表达式的语法与一般正则表达式相似,但具体的写法也受不同版本的Oracle环境不同,这篇文章主要介绍了oracle中sql 正则怎么写,需要的朋友可以参考下
    2023-04-04
  • 常用Oracle分析函数大全

    常用Oracle分析函数大全

    本文是小编日常手机整理的有关oracle分析函数,oracle分析函数功能非常强大,工作也常用到,所以大家务必要掌握,对oracle分析函数知识感兴趣的朋友一起看看吧
    2016-08-08
  • Oracle表索引查看常见的方法总结

    Oracle表索引查看常见的方法总结

    索引是数据库系统中的一种数据结构,用于加快查询的速度,在Oracle中可以在表或视图上创建索引,这篇文章主要给大家介绍了关于Oracle表索引查看常见方法总结的相关资料,需要的朋友可以参考下
    2023-11-11

最新评论