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); 
            }
        }
相关推荐
码农阿豪6 分钟前
告别兼容焦虑:电科金仓 KES 如何把 Oracle 的 PL/SQL 和 JSON 业务“接住”
数据库·sql·oracle·json·金仓数据库
曹牧11 分钟前
Oracle SQL 中,& 字符
数据库·sql·oracle
世洋Blog15 分钟前
装饰器模式实践:告别臃肿的继承链,优雅解耦初始化状态管理
unity·设计模式·c#·装饰器模式
wdfk_prog26 分钟前
[Linux]学习笔记系列 -- [fs]dcache
linux·数据库·笔记·学习·ubuntu
xrl201244 分钟前
ruoyi-vue2集成flowable6.7.2后端篇
数据库·ruoyi·flowable·工作流集成
java1234_小锋1 小时前
Redis到底支不支持事务啊?
java·数据库·redis
云和恩墨2 小时前
告别 “事后救火”:7 大前置动作规避 80% 数据库故障
数据库·oracle
STLearner2 小时前
VLDB 2025 | 时间序列(Time Series)论文总结(预测,异常检测,压缩,自动化等)
数据库·人工智能·深度学习·神经网络·机器学习·数据挖掘·时序数据库
2 小时前
TIDB——TIKV——raft
数据库·分布式·tidb
不会c嘎嘎2 小时前
MySQL 指南:全面掌握用户管理与权限控制
数据库·mysql