oracle中NUMBER(1,0)的字段如何映射到c#中

1。 先在oracle中试了一下,这种类型的数据的取值范围,0~15。意思是说它是一个HEX的一个单元。二进制4bit

2。 然后查了查相关的资料,因为我试了几种类型都不行,

Oracle数据类型与.NET中的对应关系

按这个表格,<=4,所以应当是Int16

事实证明,的确是可行的。

3。 相关的代码

调用代码

cs 复制代码
Int16 myval = ConvertRecordValueWithName<Int16>(item[3], "mynumber_1");                    

库代码

cs 复制代码
        private T ConvertRecordValueWithName<T>(object value,string rename)
        {
            try
            {
                if (Convert.IsDBNull(value)) //这里比较巧妙,如果 为null,则return default value
                {
                    if (typeof(T) == typeof(String))
                    {
                        return (T)(object)string.Empty;
                    }
                    return default(T);
                }
                else
                {
                    return (T)value;
                }
            }
            catch (System.Exception ex)
            {
                MyErrExcu.E1(ex, rename);
                return default(T); 
            }
        }
相关推荐
SelectDB10 小时前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶12 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
掉头发的王富贵15 小时前
【StarRocks】极限十分钟入门StarRocks
数据库·sql·mysql
Nturmoils15 小时前
WHERE 条件别凭习惯写,常用查询先跑一遍
数据库
Databend1 天前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
雨落倾城夏未凉2 天前
第四章c#方法-参数数组和可选参数(16)
后端·c#
ClouGence3 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
唐青枫3 天前
线程不是越多越快:C#.NET Thread 生命周期、同步与后台工作线程实战
c#·.net
飞将3 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
唐青枫4 天前
别只会反射:C#.NET Emit 动态生成代码实战详解
c#·.net