求: raw-> number,number-> raw 的PL/SQL 函数1. raw(4)-> number:
   四个字节,从高位到地位排列。
   (如vb 中: 01020304  -> 1*&H1000000+ 2*&H10000 + 3*&H100 + 4)2. number-> raw(4):
   上述过程的逆过程我这边也正在试,请大侠帮忙啦,时间紧急,如果有现成的,借我参考,多谢了!

解决方案 »

  1.   

    沒有現成的函數可以使用的。
    再者raw能不能轉換成number要看里面存放的內容是否是數字字符。
    可有先轉換成字符(varchar2),然后再使用to_number函數轉為number
    參考:utl_raw
      

  2.   

    参考RAWTOHEX(raw) 和 HEXTORAW(HEX)
      

  3.   

    http://download-west.oracle.com/docs/cd/A87860_01/doc/appdev.817/a76936/utl_raw2.htm#998328参考以上,不知你需求
      

  4.   

    谢谢大家,
    1.RAWTOHEX(raw) 和 HEXTORAW(HEX) 的话:
      number-> hex 也不知道怎么转换。。:(2.UTL_RAW 包我也看了,大多数是 字符串的转化,没有 number 的。:(3.
    先说2位的:
    tmp raw(2);
    num number;
    begin
       num:=65535
       --num-->FFFF    这个就做不出来。。:(
       tmp:= hextoraw(01);
    end num_to_raw;
      

  5.   

    上文应该是:
    tmp:= hextoraw(FFFF);