`
immortal2512
  • 浏览: 44080 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

oracle以分隔符来循环字符串

阅读更多

CREATE OR REPLACE PROCEDURE TEST(P_DETAIL_RESULT_COUNT IN VARCHAR2) AS
  V_DETAIL_TYPE  VARCHAR2(64);
  V_RESULT_COUNT NUMBER(12);
  V_LEN          NUMBER;
  V_LAST_POS     NUMBER;
  V_POS          NUMBER;
  V_NUM          NUMBER;
  V_SUB_SIGN     VARCHAR2(1) := ',';
  V_EQUAL_SIGN   VARCHAR2(1) := '=';
  V_EQUAL_POS    NUMBER;
  V_DETAIL       VARCHAR2(128);
BEGIN

  V_LEN      := LENGTH(V_SUB_SIGN);
  V_LAST_POS := 1 - V_LEN;
  LOOP
    V_POS := INSTR(P_DETAIL_RESULT_COUNT, V_SUB_SIGN, V_LAST_POS + V_LEN);
    IF V_POS > 0 THEN
      --FOUND
      V_NUM := V_POS - (V_LAST_POS + V_LEN);
    ELSE
      --NOT FOUND
      V_NUM := LENGTH(P_DETAIL_RESULT_COUNT) + 1 - (V_LAST_POS + V_LEN);
    END IF;
 
    V_DETAIL := SUBSTR(P_DETAIL_RESULT_COUNT, V_LAST_POS + V_LEN, V_NUM);
   
    V_EQUAL_POS:=INSTR(V_DETAIL,V_EQUAL_SIGN);
    V_DETAIL_TYPE := SUBSTR(V_DETAIL,1,V_EQUAL_POS-1);
    V_RESULT_COUNT := SUBSTR(V_DETAIL,V_EQUAL_POS+1);
 
    EXIT WHEN V_POS = 0;
    V_LAST_POS := V_POS;
  END LOOP;

  COMMIT;
  --发生异常直接捕获
EXCEPTION
  WHEN OTHERS THEN
    ROLLBACK;
    RAISE;
END;

 

分享到:
评论

相关推荐

    Oracle9i的init.ora参数中文说明

    在客户机和服务器上使用同一字符集时, 应以该字符集所定义的字符来衡量字符串。现有的列将不受影响。 值范围: BYTE 或 CHAR。 默认值: nls_length_semantics 的数据库字符集的字符所使用的度量单位。BYTE。 nls_...

    C#编程经验技巧宝典

    19 <br>0038 巧用“^=”运算符 19 <br>0039 巧用位移运算符 20 <br>0040 使用条件运算符 20 <br>0041 巧用分隔符 20 <br>0042 如何处理转义字符 21 <br>0043 “;”结束符问题 21 ...

    整理后java开发全套达内学习笔记(含练习)

    System.out.printf() 可插入带 % 的输入类型,前两种只可以插入转义符, 不能插入 % 的数据或字符串 在 printf 里面,输出有5个部分 %[argument_index$][flags][width][.precision]conversion 以“%”开头,[第几个...

    PL/SQL 基础.doc

    1)字符型文字(字符串) 'tom' (单引号) 'tom''s pen' ''为2个单引号(标识转义) 为tom's pen 2)数字型 123 -4 +56 0 9.0 1.23E5 9.8e-3 3)布尔型 TRUE FALSE NULL 7. 变量声明 语法 Var_name [CONSTANT](标识...

    最新Java面试宝典pdf版

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    Java面试笔试资料大全

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    Java面试宝典2010版

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 2、编写一个程序,将d:\java目录下的所有.java文件复制到d:\...

    PHP基础教程 是一个比较有价值的PHP新手教程!

    注意不同的是被单引号引出的字符串是以字面定义的,而双引号引出的字符串可以被扩展。反斜杠(\)可以被用来分割某些特殊字符。举例如下: $first = 'Hello'; $second = "World"; $full1 = "$first $second"; # ...

    Java面试宝典-经典

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    JAVA面试宝典2010

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    java面试题大全(2012版)

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    Java面试宝典2012版

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到...

    java面试宝典2012

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 67 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    Java面试宝典2012新版

    1、编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。 61 2、编写一个程序,将d:\java目录下的所有.java文件复制到d...

    精髓Oralcle讲课笔记

    -- 首先,以超级管理员的身份登录oracle sqlplus sys/bjsxt as sysdba --然后,解除对scott用户的锁 alter user scott account unlock; --那么这个用户名就能使用了。 --(默认全局数据库名orcl) 1、...

    疯狂JAVA讲义

    9.6.4 使用MessageFormat处理包含占位符的字符串 349 9.6.5 使用类文件代替资源文件 350 9.6.6 使用NumberFormat格式化数字 350 9.6.7 使用DateFormat格式化日期 352 9.7 本章小结 355 本章练习 355 第10章 ...

    玩转模板--自动代码生成工程

    只一句代码就可以将一个字符串写入一个文件,如果我们自己写的话,得这样 打开一个文件,判断是否存在,判断编码类型,写入方式是追加还是覆盖,接着创建流,写入流,关闭流等等没有十几,二十行代码根本搞不定,还不一定见...

    Java 面试宝典

    35、如何把一段逗号分割的字符串转换成一个数组? ............................................... 25 36、数组有没有 length()这个方法? String 有没有 length()这个方法? .................... 25 37、下面这...

Global site tag (gtag.js) - Google Analytics