Oracle通过函数进行进制转化-创新互联

十六进制转化为十进制:to_number()

创新互联是一家集网站建设,潜江企业网站建设,潜江品牌网站建设,网站定制,潜江网站建设报价,网络营销,网络优化,潜江网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。SQL> select to_number('a','x') from dual; TO_NUMBER('A','X') ------------------                 10

十进制转化为十六进制:to_char()

SQL> select to_char(10,'xxx') from dual; TO_CHAR(10,' ------------    a

二进制没有办法直接转化可以通过函数实现:

十进制转化为二进制

CREATE OR REPLACE FUNCTION NUMBER_TO_BIT(V_NUM NUMBER) RETURN VARCHAR IS V_RTN VARCHAR(8);--注意返回列长度   V_N1  NUMBER;   V_N2  NUMBER; BEGIN V_N1 := V_NUM;     LOOP       V_N2  := MOD(V_N1, 2);       V_N1  := ABS(TRUNC(V_N1 / 2)); --取商的绝对值       V_RTN := TO_CHAR(V_N2) || V_RTN;       EXIT WHEN V_N1 = 0;     END LOOP; --返回二进制长度  SELECT lpad(V_RTN,8,0) --八位不足补0     INTO   V_RTN     FROM dual; return V_RTN; end;

二进制转化为十进制:

CREATE OR REPLACE FUNCTION BIT_TO_NUMBER(P_BIN IN VARCHAR2) RETURN NUMBER  AS   V_SQL VARCHAR2(30000) := 'SELECT BIN_TO_NUM(';   V_RETURN NUMBER; BEGIN   IF LENGTH(P_BIN) >= 256 THEN     RAISE_APPLICATION_ERROR(-20001, 'INPUT BIN TOO LONG!');   END IF;   IF LTRIM(P_BIN, '01') IS NOT NULL THEN     RAISE_APPLICATION_ERROR(-20002, 'INPUT STR IS NOT VALID BIN  VALUE!');   END IF;   FOR I IN 1 .. LENGTH(P_BIN) LOOP     V_SQL := V_SQL || SUBSTR(P_BIN, I, 1) || ',';   END LOOP;   V_SQL := RTRIM(V_SQL, ',') || ') FROM DUAL';   EXECUTE IMMEDIATE V_SQL     INTO V_RETURN;   RETURN V_RETURN; END;

创建函数同义词

create public synonym number_to_bit for number_to_bit; grant execute on number_to_bit to public

十六转二和二转十六,则可以结合十转十六函数和二转十函数进行,这里不在额外举例。

ASCII码及ORACLE元数据转换函数:RAWTOHEX和HEXTORAW

SQL> select rawtohex(1) from dual; RAWTOHEX(1) ------------ C102 SQL> select rawtohex('1') from dual; RAWTOH ------ 31 SQL> select rawtohex('a') from dual; RAWTOH ------ 61 SQL> select rawtohex('A') from dual; RAWTOH ------ 41 SQL> select hextoraw('A') from dual; HE -- 0A SQL> select hextoraw('1') from dual; HE -- 01

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章标题:Oracle通过函数进行进制转化-创新互联
分享链接:http://azwzsj.com/article/cehoed.html