oracle实现PDU编码

简介: oracle实现PDU编码54powerman一 UCS2编码函数create or replace function UCS2Encode(orgString varchar2) return varchar2 is  Result varchar...

oracle实现PDU编码
54powerman
一 UCS2编码函数
create or replace function UCS2Encode(orgString varchar2) return varchar2 is
  Result varchar2(255);
  dst varchar2(60);
  tmp varchar2(2);
  pos integer;
begin
  dst:='';
  pos:=length(orgString);
  while pos>0
  loop
    tmp:=substr(orgString,pos,1);
    Result:=trim(upper(to_char(ascii(tmp),'0xxx'))) || Result;
    pos:=pos-1;
  end loop;
  return(Result);
end UCS2Encode;

二 UCS2解码函数

create or replace function UCS2Decode(pduString varchar2)
  return varchar2 is
  ret   varchar2(400);
  v_msg  varchar2(400);
  v_pos number;
  v_tmp varchar2(5);
begin
  if encode < 0 or encode > 2 then
    return '';
  end if;
  ret := '';
  v_msg:=pduString;
  --如果不含有UDH头,不需要下面的三行
  --v_pos   := to_number(substr(pduString,1,2),'0x');
  --v_pos:=v_pos*2+3;
  --v_msg:=substr(pduString,v_pos,length(pduString)-v_pos+1);
  v_pos:=1;
  while v_pos < length(v_msg) loop
    v_tmp := substr(v_msg, v_pos, 4);
    if encode = 1 then
      ret := ret || trim(to_char(ascii(v_tmp), '0x'));
    elsif encode = 2 then
      v_tmp:='/'||v_tmp;
      ret := ret || unistr(v_tmp);
    end if;
    v_pos := v_pos + 4;
  end loop;
  ret:=upper(ret);
 
  return(ret);
end UCS2Decode;

 未完,更新中...
 

目录
相关文章
|
存储 设计模式 Oracle
Oracle跨数据库实现定时同步指定表中的数据
Oracle跨数据库实现定时同步指定表中的数据
|
Oracle 关系型数据库
查询Oracle字段列的最大值并查询多列数据的实现方法
查询Oracle字段列的最大值并查询多列数据的实现方法
2247 0
|
Oracle 关系型数据库 Java
解决读取Oracle数据库US7ASCII编码乱码问题
今天和第三方对接数据时,对方提供了一个视图US7ASCII编码,给代码调试带来了很大的不便。程序输出的mybatis获取的对象及new String(s.getBytes("ISO8859-1"), "GB2312")加解密后都是乱码。
1790 1
|
存储 SQL Oracle
跨Oracle数据库实现表级别的实时同步
跨Oracle数据库实现表级别的实时同步
|
Oracle 关系型数据库
oracle按code编码长度查询代码展现层级关系(给字段前加空格)
学习oracle按code编码长度查询代码展现层级关系(给字段前加空格)
155 0
oracle按code编码长度查询代码展现层级关系(给字段前加空格)
|
Oracle Java 关系型数据库
oracle实现主键自增长及自动生成策略
oracle实现主键自增长及自动生成策略
565 0
|
Oracle 关系型数据库 数据库
Python远程操作Oracle实现一键备份还原数据库演示,利用socket进行imp、exp一键导入导出oracle数据库dmp文件
Python远程操作Oracle实现一键备份还原数据库演示,利用socket进行imp、exp一键导入导出oracle数据库dmp文件
407 0
Python远程操作Oracle实现一键备份还原数据库演示,利用socket进行imp、exp一键导入导出oracle数据库dmp文件
|
Oracle 关系型数据库 数据库
ORACLE查询编码以及对应的字符长度
ORACLE查询编码以及对应的字符长度
|
Oracle 关系型数据库 数据库
Oracle数据库访问其他用户下的表,不加表所属的用户名的实现方法
Oracle数据库访问其他用户下的表,不加表所属的用户名的实现方法