Oracle NUMBER(20)的相应C#类型是什么? Oracle版本是8。
更新
这是插入查询。然后尝试将以下参数添加到命令:
IDbDataParameter idParameter = cmd.CreateParameter();
idParameter.DbType = DbType.Int64;
idParameter.Value = id;
cmd.Parameters.Add(idParameter);
Oracle给了我例外: System.Data.Odbc.OdbcException:ERROR [22007] [Microsoft] [Oracle的ODBC驱动程序] [Oracle] ORA-01840:日期格式的输入值不够长
答案 0 :(得分:1)
答案 1 :(得分:0)
您是否使用GetInt32()方法来读取数据?请尝试使用GetDecimal()。
答案 2 :(得分:0)
Int16表示-32768和32767之间的值,Int32表示-2147483648和2147483647之间的值,Int64表示更大的值。参考this
答案 3 :(得分:0)
错误消息ORA-01840: input value not long enough for date format
不是数据类型映射错误。这是Oracle在某些情况下失败TO_DATE
时遇到的错误,例如:
SQL> SELECT to_date('0101', 'ddmmyyyy') FROM dual;
ORA-01840: input value not long enough for date format
我会查看您的SQL查询/ PLSQL块以查找此类错误。