以下内容包括:

1)。提供两个进制转换包

2)。提供进制转换的一些简便方法

3)。提供进制转换的不同方法的性能评估

1。两个进制转换包

1)包PKG_DM_BASE_CONV(推荐)

CREATE OR REPLACE PACKAGE PKG_DM_BASE_CONV AS

FUNCTION hex_to_dec (hexnum IN char) RETURN NUMBER;

PRAGMA restrict_references (HEX_TO_DEC,WNDS);

FUNCTION dec_to_hex (N IN NUMBER) RETURN VARCHAR2;

PRAGMA restrict_references (DEC_TO_HEX,WNDS);

FUNCTION oct_to_dec (octin IN NUMBER) RETURN NUMBER;

PRAGMA restrict_references (OCT_TO_DEC,WNDS);

FUNCTION dec_to_oct (decin IN NUMBER) RETURN VARCHAR2;

PRAGMA restrict_references (DEC_TO_OCT,WNDS);

FUNCTION bin_to_dec (binin IN NUMBER) RETURN NUMBER;

PRAGMA restrict_references (BIN_TO_DEC,WNDS);

FUNCTION dec_to_bin (decin IN NUMBER) RETURN VARCHAR2;

PRAGMA restrict_references (DEC_TO_BIN,WNDS);

FUNCTION hex_to_bin (hexin IN VARCHAR2) RETURN NUMBER;

PRAGMA restrict_references (HEX_TO_BIN,WNDS);

FUNCTION bin_to_hex (binin IN NUMBER) RETURN VARCHAR2;

PRAGMA restrict_references (BIN_TO_HEX,WNDS);

FUNCTION oct_to_bin (octin IN NUMBER) RETURN NUMBER;

PRAGMA restrict_references (OCT_TO_BIN,WNDS);

FUNCTION bin_to_oct (binin IN NUMBER) RETURN NUMBER;

PRAGMA restrict_references (BIN_TO_OCT,WNDS);

FUNCTION oct_to_hex (octin IN NUMBER) RETURN VARCHAR2;

PRAGMA restrict_references (OCT_TO_HEX,WNDS);

FUNCTION hex_to_oct (hexin IN VARCHAR2) RETURN NUMBER;

PRAGMA restrict_references (HEX_TO_OCT,WNDS);

--十六进制字符转换成ASCII码字符

FUNCTION raw_to_char(v_raw LONG RAW) RETURN VARCHAR2;

PRAGMA restrict_references (raw_to_char,WNDS);

--ASCII码字符转换成十六进制字符

FUNCTION char_to_raw(v_char varchar2) RETURN LONG RAW;

PRAGMA restrict_references (char_to_raw,WNDS);

END PKG_DM_BASE_CONV;

/

CREATE OR REPLACE PACKAGE BODY PKG_DM_BASE_CONV AS

FUNCTION hex_to_dec (hexnum in char) RETURN NUMBER IS

i

NUMBER;

digits

NUMBER;

result

NUMBER := 0;

current_digit

char

(1);

current_digit_dec number;

BEGIN

digits := length(hexnum);

FOR i IN 1。

digits LOOP

current_digit := SUBSTR(hexnum, i, 1);

IF current_digit IN ('A','B','C','D','E','F') THEN

current_digit_dec := ascii(current_digit) - ascii('A') + 10;

ELSE

current_digit_dec := to_number(current_digit);

END IF;

result := (result * 16) + current_digit_dec;

END LOOP;

RETURN result;

END hex_to_dec;

FUNCTION dec_to_hex (N IN NUMBER) RETURN VARCHAR2 IS

H VARCHAR2(64) :=';

N2 INTEGER

:= N;

BEGIN

LOOP

SELECT rawtohex(chr(N2))||H

INTO H

FROM dual;。

全部

oracle中如何转换成数字,如何在Oracle中实现数字进制转换完全版?相关推荐

  1. 计算机中的数制和编码教案,计算机《数制与编码进制转换》公开课教案.doc

    <计算机应用基础>教案 新田县职业中学 蒋玲 PAGE PAGE 7 数制与编码--进制转换 [学情分析]本课内容是在学生已经学习了计算机发展与应用.计算机系统的组成等知识的基础上进行,已 ...

  2. 计算机中常用数制及编码教案,计算机《数制与编码-进制转换》公开课教案

    <计算机<数制与编码-进制转换>公开课教案>由会员分享,可在线阅读,更多相关<计算机<数制与编码-进制转换>公开课教案(8页珍藏版)>请在人人文库网上搜 ...

  3. 计算机应用基础进制转换说课稿,计算机应用基础信息技术基础《进制转换》教案.doc...

    计算机应用基础信息技术基础<进制转换>教案 "项目1-3 进制转换"教案 第 5-6 课时 课型: 理实一体化 授课时间:__9_月__ 24 _日 第_4 _周 星期 ...

  4. python的用算法进制转换详解_学习python第五天进制转换

    6.进制之间的转换(重要) 二进制:满二进一 范围:0.1符号:0b例如:0b10...[注意]计算机只能识别二进制数据 八进制:满八进一 范围:0~7符号:0o例如:0o66 十进制:满十进一 范围 ...

  5. (计算机组成原理)第二章数据的表示和运算-第一节1:一文总结进制转换,妈妈再也不用担心我不会进制转换了

    文章目录 一:进位计数法 二:进制转换 (1)其他进制数转换为十进制 (2)十进制数转化为其他进制数 (3)二进制.八进制和十六进制的相互转换 三:真值和机器数 一:进位计数法 进位计数法是一种计数的 ...

  6. python将中文转换成utf8_如何在python中从unicode转换成utf8?

    我正在编写python脚本,从sqlite3数据库中提取xbmc媒体应用程序的数据.在 我可以看到,在我的代码中,它将使用unicode对象提取数据,其中我将有字符串(u'.u和{}.在 我想把它转换 ...

  7. 疯狂的母牛,对方程的求解,不要62(不吉利数字),回文串,进制转换以及空心三角形

    5,有一头母牛,它每年年初生一头小母牛.每头小母牛从第四个年头开始,每年年初也生一头小母牛.问在第n年的时候,共有多少头母牛? 输入:数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0&l ...

  8. 每天一道LeetCode-----将数字用字母表示(本质是26进制转换)

    Excel Sheet Column Title 原题链接Excel Sheet Column Title 讲数字转为字母'A'到'Z'表示,对应关系如图 思路: 本质上是将10尽职转为26进制,不同 ...

  9. php格式转换成docx,如何在PHP中修改.doc或.docx文件

    我必须修改php中上传的.doc或.docx文件.我用谷歌搜索,但我只发现了如何阅读,却没有. 我想要原样的Word文件,并将文本放在该MS Word文件的底部. 怎么可能有人知道,请回复. 谢谢, ...

  10. 各种进制的相互转换【进制转换器】【进制转换】【算法】

    第一种进制转换:   写此篇题解之前,已经发布十进制转换M进制详解,R进制转换成十进制详解. 那第一种进制转换就是将十进制作为跳板,融合以上两种进制转换,到达由M进制转换成R进制的效果. PS:此处不 ...

最新文章

  1. R语言使用str_remove函数和str_remove_all函数删除模式匹配的字符串:str_remove函数删除第一个模式匹配的字符串、str_remove_all函数删除所有模式匹配的字符串
  2. 模式识别之Shape Context---利用Shape Context进行形状识别
  3. Redis数据库(一)——Redis简介、部署及常用命令
  4. mysql空事务死锁_mysql空当锁导致死锁_mysql
  5. SQL入侵恢复XP_CMDSHLL与开3389
  6. 《MySQL——恢复数据-误删行、表、库》
  7. 使用Maven构建Struts2项目
  8. [渝粤教育] 中国地质大学 工程地质 复习题
  9. CentOS6 x86_64最小化安装优化脚本
  10. 基于大数据的精准教学模式探究
  11. opencv——Mat 矩阵数据类型转换convertTo
  12. html设置等宽字体效果
  13. alios things开发板_AliOS Things开发:让你的开发板支持AliOS Studio调试-阿里云开发者社区...
  14. 汇编语言:AX、BX、CX、DX寄存器知识点梳理
  15. python中给变量赋值时、既确定了变量的值_Python 中的变量赋值不需要类型声明,可以直接赋值,通过值来决定变量的类型。_学小易找答案...
  16. JavaScriptCore内部原理(一):从JS源码到字节码的追踪
  17. 网安零基础学习-python-文件对象(灰帽编程12)
  18. vue3 ts 使用 pinia
  19. 密码忘了怎么办?——如何找回多可系统的加密存储密码
  20. VB下载地址:Eview下载地址;Java下载地址和安装教程

热门文章

  1. win10 台式机麦克风杂音 去除
  2. 有符号整型加法与乘法
  3. Android 平台语音通话及回音消除、噪音消除研究
  4. excel自动恢复文档被关闭或者误删除
  5. python用七巧板图片画个图_canvas练习 - 七巧板绘制
  6. java电商商品基本信息表,Java生鲜电商平台-商品表的设计
  7. 网络安全学习(渗透测试方法论,web架构安全分析,信息收集)
  8. 用Xbee实现Arduino之间的无线通信,远程控制小灯
  9. List的remove()方法避坑
  10. GotW#63 狂乱的代码