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); 
            }
        }
相关推荐
DarkAthena19 分钟前
【GaussDB】全密态等值查询功能测试及全密态技术介绍
数据库·gaussdb
我不是程序猿儿27 分钟前
【C#】观察者模式 + UI 线程调度、委托讲解
观察者模式·ui·c#
专注VB编程开发20年36 分钟前
c# .net支持 NativeAOT 或 Trimming 的库是什么原理
前端·javascript·c#·.net
ShawnLeiLei1 小时前
2.3 Flink的核心概念解析
数据库·python·flink
钢铁男儿1 小时前
C# 简单工厂模式(简单工厂模式如何工作)
前端·c#·简单工厂模式
石皮幼鸟2 小时前
数据完整性在所有场景下都很重要吗?
数据库·后端
nightunderblackcat3 小时前
新手向:异步编程入门asyncio最佳实践
前端·数据库·python
isyoungboy3 小时前
c#实现鼠标mousemove事件抽稀,避免大数据阻塞网络
c#·计算机外设·远程桌面·deskflow
DarkAthena3 小时前
【GaussDB】使用MySQL客户端连接到GaussDB的M-Compatibility数据库
数据库·mysql·gaussdb
livemetee4 小时前
Flink2.0学习笔记:使用HikariCP 自定义sink实现数据库连接池化
大数据·数据库·笔记·学习·flink