oracle进制-10进制跟2进制互转

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 WHENV_N1 = 0;
    END LOOP;
--返回二进制长度
 SELECT lpad(V_RTN,8,0)
    INTO   V_RTN
    FROM dual;
return V_RTN;END;
CREATE OR REPLACEFUNCTION BIT_TO_NUMBER(P_BIN INVARCHAR2) RETURNNUMBER 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!‘);
  ENDIF;
  IF LTRIM(P_BIN, ‘01‘) IS NOT NULL THEN
    RAISE_APPLICATION_ERROR(-20002, ‘INPUT STR IS NOT VALID BIN VALUE!‘);
  END IF;
  FORI 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;
时间: 2024-11-05 06:03:21

oracle进制-10进制跟2进制互转的相关文章

详解2进制,10进制,16进制,8进制,36进制

本篇介绍C/C++语言中的进制的概念,主要介绍2进制.10进制.16进制,这三种是编程时必须掌握的也是最经常使用的.另外,介绍8进制和36进制,当中 36进制在实际project项目中会遇到. (本文选自<C/C++学习指南>.邵发.附录"2进制,10进制,16进制") 讲2进制.10进制.16进制的视频教程,点击观看 权利声明:作者拥有本书的所有权利. 作者授权不论什么人都能够自由转载本站点公布的内容,但转载时必须遵守下面限制: ①转载时必须全文转载.不得有不论什么改动,

详细解释2进制,10进制,16进制,8进制,36进制

本篇介绍C/C++语言中的进制的概念,主要介绍2进制.10进制.16进制,这三种是编程时必须掌握的也是最常用的.另外,介绍8进制和36进制,其中 36进制在实际工程项目中会遇到. (本文选自<C/C++学习指南>,邵发,附录"2进制,10进制,16进制") 权利声明:作者拥有本书的全部权利.作者授权任何人都可以自由转载本网站发布的内容,但转载时必须遵守以下限制: ①转载时必须全文转载,不得有任何修改,必须包含"权利声明"和"官网地址"

JS-011-颜色进制转换(RGB转16进制;16进制转RGB)

在网页开发的时候,经常需要进行颜色设置,因而经常需要遇到进行颜色进制转换的问题,例如:RGB转16进制:16进制转RGB),前几天在测试的时候,发现网站的颜色进制转换某类16进制颜色(例如:#000080,#FA08FA)转换时总是提示颜色非法,看了一下 js 源码,发现其进制转换的方法是错误的.找了一下度娘和谷大爷,最终写了一个颜色转换的小方法,源码如下所示: String.prototype.colorHex2Rgb = function(){ var reg = /^#([0-9a-fA-

iPhone5S洗澡的时候进水了不开机了怎么办iphone5S进水了怎么办不显示黑屏维修iphone5c进水了怎么办维修多少钱 (认证商家)

为什么网上的价格差距这么大?为什么打电话问的商家报的价格都不一样?哪种几百块钱的屏幕(芯片)能相信吗?淘宝上面的屏幕(芯片)能相信吗?哪里能找到原装的屏幕呢?哪里的维修点才靠谱呢?北京中关村和深圳那边的维修市场能相信吗? 电子城报的二三百能相信吗?原装的配件和仿的价钱相差多少呢? 当您看到了这里,请您选择飞维智能科技有限责任公司(我们用最真挚的态度来为您服务) 我们在保证质量的前提下用最低的价格来为广大客户服务.我们的原则是(少花钱,买放心,保质量,求口碑) 工程师:罗飞报修热线:158 110

Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0.jar的问题

今天往STS工具中导入一个maven项目,导入后发现pom.xml文件的<dependency>处报错:Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0.jar(简单译为没有找到ojdbc.jar包).虽然可能并不影响运行,但对于一个强迫症的人肯定受不了. 如图: 那么为什么会出现这个错误呢?这是因为Oracle的商业版权问题,maven的中心资源库中没有ojdbc驱动包,所以需要在maven本地库中安装ojdbc驱动包.下面说说解决办法:

iPhone5s进水维修多少钱苹果5s进水了修一下多少钱国行5s进水了在保修期内更换新机多少钱

为什么网上的价格差距这么大?为什么打电话问的商家报的价格都不一样?哪种几百块钱的屏幕(芯片)能相信吗?淘宝上面的屏幕(芯片)能相信吗?哪里能找到原装的屏幕呢?哪里的维修点才靠谱呢?北京中关村和深圳那边的维修市场能相信吗? 电子城报的二三百能相信吗?原装的配件和仿的价钱相差多少呢? 当您看到了这里,请您选择飞维智能科技有限责任公司(我们用最真挚的态度来为您服务) 我们在保证质量的前提下用最低的价格来为广大客户服务.我们的原则是(少花钱,买放心,保质量,求口碑) 工程师:罗飞报修热线:158 110

pom.xml中添加oracle数据库驱动包报错: Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0

pom.xml 加载jar包时报错:Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0. 由于oracle的ojdbc收费,所以在maven项目导入时没有ojdbc14-10.2.0.4.0.jar包. 解决方法: 配置本地库.下载jar包,把jar包放在仓库对应的文件夹ojdbc14\10.2.0.4.0\里,安装到本地仓库(需要事先配过maven的环境变量),在命令行工具中写如下命令,注意本地仓库位置一定要写对: mvn install:in

Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级

Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级环境:OEL 5.7 + Oracle 10.2.0.5 RAC 3.安装Clusterware 3.1 解压clusterware安装介质 3.2 开始安装clusterware 3.3 root用户按提示执行脚本 3.4 vipca创建(可能不需要) 4.升级Clusterware 4.1 解压Patchset包 4.2 开始升级clusterware 4.3 root用户按提

Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级

Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5.1 解压安装介质 5.2 开始安装db软件 5.3 root用户执行脚本 6.升级Database软件 6.1 升级db软件 6.2 root用户执行脚本 7.创建数据库 7.1 创建监听 7.2 创建ASM 7.3 创建数据库 Linux平台 Oracle 10gR2 RAC安装指导:Part1:L

maven中报错Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0

在检索完工程后报错Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0. 由于oracle的ojdbc收费,所以在maven项目导入时没有ojdbc14-10.2.0.4.0.jar包. 解决方法: 配置本地库.下载jar包,安装到本地仓库(需要事先配过maven的环境变量),在命令行工具中写如下命令,注意本地仓库位置一定要写对: mvn install:install-file -DgroupId=com.Oracle -DartifactId=