Oracle存储进程案例荟萃
发布时间:2021-02-24 22:29:21 所属栏目:站长百科 来源:网络整理
导读:注:行使的器材为PLSQL Developer 壹、while简朴行使( 替代字符串中的字符,和REPLACE结果一样 ) 注:?这里没有行使REPLACE函数 1、成立存储进程 CREATE OR REPLACE PROCEDURE pro_testcom (p_string IN VARCHAR2 ,replace1 IN VARCHAR2 ,replace2 IN VARCHAR
|
注:行使的器材为PLSQL Developer壹、while简朴行使(替代字符串中的字符,和REPLACE结果一样)注:?这里没有行使REPLACE函数 1、成立存储进程 CREATE OR REPLACE PROCEDURE pro_testcom (p_string IN VARCHAR2,replace1 IN VARCHAR2,replace2 IN VARCHAR2)
IS
p_start NUMBER := 1;-- 从哪个位置开始截取
p_subLength NUMBER := 1;-- 必要截取多长
p_string_length NUMBER := length(p_string);-- 获取必要截取的字符串的长度
p_new_string VARCHAR2(2014) := ‘‘;--存储拼接新的字符串
BEGIN
WHILE(p_start < p_string_length + 1) LOOP
p_subLength := INSTR(p_string,replace1,p_start);
IF p_subLength = 0 THEN
p_subLength := p_string_length + 1;
END IF ;
IF p_new_string IS NULL THEN
p_new_string := SUBSTR(p_string,p_start,p_subLength - p_start);
ELSE
p_new_string := p_new_string||replace2||SUBSTR(p_string,p_subLength - p_start);
END IF;
p_start := p_subLength + 1;
END LOOP;
-- 打印功效
DBMS_OUTPUT.PUT_LINE(‘替代之后的字符串为:‘||p_new_string);
END pro_testcom;
?2、执行存储进程(呼吁窗口中执行) -- 打开日记输出 set serveroutput on; exec pro_testcom(‘555.555.555.555‘,‘.‘,‘-‘); 3、执行功效? 替代之后的字符串为:555-555-555-555 PL/SQL procedure successfully completed
贰、......(编辑:湖南网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

