本文目录
java 或者 oracle 实现 字符串的排列组合
这个组合数虽然很多,但是方法很简单,这16个字符组成的字符串无非就是一个16进制的数而已,只需要遍历小于16的12次方的所有的数字并且把它转化为16进制的字符串就可以了,16的12次方就是2的48次方,long型完全可以hold住,如果你想要代码的话,你等我一会儿我写给你
c# 中,一个长度为422234 的字符串,想存入oracle 数据库clob 字段,怎么存入 麻烦具体方法
我是学java的,但我想应该是一样的,先转换成byte数组,再存入clob对象insert 语句改为:strSql = " insert into yhsjArrInfo(ID, YHM, JH, DTIME, BZ, ARR1, ARR2 ) values( YHSJARRID.NEXTVAL, ’kty’,’jh112’,sysdate,’’,empty_clob(),empty_clob()) ";再去取这一条记录,where id = :id,取出这条记录后再更新它的empty_clob(),Clob b = (Clob) rs.getClob("arr1"),BufferedOutputStream.write(byte)类似这样的意思,以供参考
oracle存储过程 遍历字符串
不用循环不行么,一个sql就搞定啦
select c from (with test as (select ’21,32,43’ c from dual) select substr(t.ca,instr(t.ca, ’,’, 1, c.lv) + 1,instr(t.ca, ’,’, 1, c.lv + 1) - (instr(t.ca, ’,’, 1, c.lv) + 1)) AS c from (select ’,’ || c || ’,’ AS ca,length(c || ’,’) - nvl(length(REPLACE(c, ’,’)),0) AS cnt FROM test) t, (select LEVEL lv from dual CONNECT BY LEVEL 《= 100) c where c.lv 《= t.cnt )
’21,32,43’ --这个你换成你要查的字符串,数字字母什么都可以,只要逗号分隔就好