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); 
            }
        }
相关推荐
SQL必知必会6 分钟前
使用 SQL 进行队列分析
数据库·sql
Project_Observer6 分钟前
项目管理中如何跟踪工时?
数据库·深度学习·机器学习
一点多余.7 分钟前
openGauss 企业版安装全流程指南
linux·数据库·opengauss·企业版
发现你走远了40 分钟前
MySQL(Windows)压缩包安装与配置指南(超详细版)
数据库·mysql
涛涛讲AI1 小时前
Django Admin模块的都有哪些表以及之间的关系
数据库·django·sqlite
青衫码上行1 小时前
Redis持久化 (快速入门)
数据库·redis·缓存
数据知道1 小时前
PostgreSQL:详解 PostGIS 地理信息数据处理
数据库·postgresql
小草儿7991 小时前
pg18权限篇章
数据库
剑之所向1 小时前
Mysql参数化
数据库·mysql·oracle