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 删除字段中空格
update sales_report set region = REGEXP_REPLACE(region, '( ){1,}', '')
- ORACLE查询字段中含有空格的数据
SELECT * FROM T_NAME WHERE REGEXP_LIKE(COLNAME, '( )+'); SELECT * FROM T_NAME WHERE length(COLNAME) ...
- set unused的用法(ORACLE删除字段)
set unused的用法(ORACLE删除字段) 一.问题 现场有一张大数据量的分区表,数据量在10G以上.因某种原因需要删除其中的某些字段.如果直接用alter table1 drop (colu ...
- 去掉MySQL字段中的空格
mysql replace 函数 语法:replace(object,search,replace) 意思:把object中出现search的全部替换为replace 案例: SQL Co ...
- java 去html标签,去除字符串中的空格,回车,换行符,制表符
public static String getonerow(String allLine,String myfind) { Pattern ...
- SQLServer如何删除字段中的某个字符串,或者替换为空格?
sql="update Table set 字段=REPLACE ( 字段,'123' , ' ') where XXX条件"把字段中123替换为空格
- oracle截取字段中的部分字符串
使用Oracle中Instr()和substr()函数: 在Oracle中可以使用instr函数对某个字符串进行判断,判断其是否含有指定的字符. 其语法为: instr(sourceString,de ...
- Oracle删除表中的重复数据
Oracle数据库删除表中的重复数据,只保留其中的一条,以两个字段为例,提供两种方法 ①.直接delete重复的数据 delete from table_name t1 where (t1.col1, ...
- JS中删除字符串中的空格
问题描述: 在进行字符串操作时,由于字符串中存在较多的空格,因此需要考虑取消字符串中的空格 问题解决: (1)删除字符串中的前导空格(字符串的前面的空格): 注意:这里使用 ...
随机推荐
- JavaScript处理json格式数据
JSON即JavaScript对象标记,是一种轻量级的数据交换格式,非常适用于服务器与JavaScript的交互.JSON是基于纯文本的数据格式. JSON是JavaScript的原生格式,可以使用J ...
- 读书笔记 effective c++ Item 11 在operator=中处理自我赋值
1.自我赋值是如何发生的 当一个对象委派给自己的时候,自我赋值就会发生: class Widget { ... }; Widget w; ... w = w; // assignment to sel ...
- Spring BeanFactory实例化Bean的详细过程
Spring中Bean的实例化是Bean生命周期的一个重要环节,通常Bean初始化后将不再改变. 那么Spring实例Bean的过程到底是怎么样的呢?! 要想获取到一个bean对象,得先通过Bea ...
- typedef struct 是什么意思
typedef用于定义一种新类型例如定义了如下的结构typedef struct student{int age;int score;}STUDENT;那么则有STUDENT stu1;就相当于str ...
- API练习_图形
#include<windows.h> LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); int WINAPI WinMain(HINS ...
- 使用Jmeter3.1进行接口测试(包含需登录后测试的接口)
Jmeter版本为3.1,以下只针对此版本进行测试说明: 1.打开Jmeter3.1: 启动命令路径:apache-jmeter-3.1\bin\jmeter.bat 2.测试步骤: 1.测试计划-- ...
- HNOI2015 Day 1
HNOI2015的题还是非常漂亮的,几道题都有很大的借鉴意义,都有很强的思考性 T1亚瑟王(概率论) 描述:http://www.lydsy.com/JudgeOnline/problem.php?i ...
- 【WCF】服务并发中的“可重入模式”
WCF服务实例的并发模式是在服务实现类上,使用 ServiceBehaviorAttribute 的 ConcurrencyMode 属性来指定.其值由 ConcurrencyMode 枚举来界定,这 ...
- map与hash_map使用与对比
#include <iostream> #include <functional> #include <map> #include <ext/hash_map ...
- CLOSE_WAIT TIME_WAIT
TCP状态转移要点 TCP协议规定,对于已经建立的连接,网络双方要进行四次握手才能成功断开连接,如果缺少了其中某个步骤,将会使连接处于假死状态,连接本身占用的资源不会被释放.网络服务器程序要同时 ...