`
hn_archer
  • 浏览: 134212 次
  • 性别: Icon_minigender_1
  • 来自: 河南
社区版块
存档分类
最新评论

无效的列类型(Invalid column type)

 
阅读更多

在一个Java WEB 项目中利用iBATIS调用一个ORACLE的存储过程。其中一个varchar2类型in参数,三个number类型的out参数。
->在iBATIS配置文件中则定义 varchar2 参数的定义为
         jdbcType=”VARCHAR” javaType=”java.lang.String” mode=”IN”,
->而number类型的参数定义为
         jdbcType=”NUMBER” javaType=”java.math.BigDecimal” mode=”OUT”


结果报:
Check the output parameters (register output parameters failed). 
Cause: java.sql.SQLException: 无效的列类型
异常。


      后来查看java.sql.Types类中有关JDBC类型变量类型,并没有发“NUMBER”这一静态字段,而只有“NUMERIC”字段。(因此 jdbcType 的值不是数据库ORACLE的参数类型,而是其对应的JDBC变量类型)
但改了之后依然报同样错误。

    后来发现在java.sql.Types类中还有一个DECIMAL静态常量,与javaType定义的java.math.BigDecimal类型一致。再修改测试则通过,不再报错。

    所以“无效的列类型”异常解决方法,根据存储过程的参数类型找出正确的jdbcType(具体参考java.sql.Types类的JDBC静态变量)。

 

分享到:
评论

相关推荐

    cvc-complex-type.2.4.d: Invalid content was found

    `cvc-complex-type`是XML Schema验证过程中关于复杂类型的错误代码,`2.4.d`则进一步指出了问题的具体类型——在当前元素的位置找到了无效的内容。 错误信息“Invalid content was found”表明在某个复杂类型的元素...

    PB的error_number列表

    **数据窗口列类型与GetItem类型不符 (DataWindow Column Type Does Not Match GetItem Type)** - **错误编号:** 12 - **描述:** 当尝试获取的数据窗口列类型与GetItem方法期望的类型不匹配时发生。 - **示例:** ...

    ORA-00904 WMSYS.WM_CONCAT标识符无效解决方案

    例如,`LISTAGG(column, delimiter) WITHIN GROUP (ORDER BY column)` 将按指定列排序并以指定分隔符连接所有行的值。 2. **自定义函数**:如果不能使用LISTAGG(例如,在Oracle 10g或更低版本中),可以创建自己的...

    “列名创建日期包含FOR XML所要求的无效XML标识符;''(0x0020)是出现错误的第一个字符。”

    在SQL Server中,"列名创建日期包含FOR XML所要求的无效XML标识符;''(0x0020)是出现错误的第一个字符"这个问题通常出现在尝试使用FOR XML子句来生成XML格式的数据时。FOR XML是SQL Server提供的一种功能,用于将...

    SQL LOADER错误小结

    Record 1: Rejected – Error on table DM.TM_WGGHF_CELL_USER_DAY, column TYPE_ID. ORA-01722: invalid number ``` 在这种情况下,可以尝试修改控制文件,避免将换行符视为数值的一部分。 3. **日期格式问题*...

    mysql常见错误集锦

    - **数据类型不匹配:** 如果您尝试为整型字段设置一个非数字作为默认值,或者为日期类型设置了一个无效的日期格式,就会出现此错误。 - **字段已存在:** 错误信息中提到“字段名称已存在错误”,这可能是由于在...

    Oracle8i_9i数据库基础

    §17.7.2 包中无效对象的查询和编译 294 §17.7.3 包源代码的导出 296 第十八章 触发器 297 §18.1 触发器类型 297 §18.1.1 DML触发器 297 §18.1.2 替代触发器 298 §18.1.3 系统触发器 298 §18.2 创建触发器 298...

    allegro教程,很好的资料

    - `Report Invalid Package`: 检查无效的封装。 - `Report Hierarchical Ports and Off-Page Connector`: 列出端口和页面外连接器。 以上是对Allegro教程中提到的关键知识点的详细解释,包括了从安装到设计原理图...

    Oracle错误一览表

    #### ORA-00001: Unique constraint (table name.column name) violated 当尝试插入或更新违反了唯一性约束的记录时,会触发此错误。例如,如果某列被定义为唯一键,而尝试插入一个已存在的值,就会引发ORA-00001...

    WinForms疑难解答.doc

    VS提示”InvalidArgument="0"的值对于Index无效”** 这种错误通常发生在数组或集合的索引超出范围时。需要检查索引值的有效性。 **48. 使用类型化DataSet** 类型化`DataSet`是`DataSet`的一个特化版本,提供了更强...

    Python常用单词.docx

    13. **Invalid**:无效的代码或值不符合语言的语法或逻辑。 14. **Indentation**:在Python中,缩进非常重要,因为它定义了代码块的结构。 15. **Unexpected**:意外的语法或行为可能引发错误。 16. **Usage**:...

    精心整理的ssh2 一些错误问题的记录(推荐)

    ### 错误四:ORA-00904: "THIS_"."PROCESS_DEPT_ID": invalid identifier 这是一个Oracle特有的错误代码,表明在SQL语句中使用了无效的标识符。通常,问题出在列名或表名拼写错误,或者没有正确地使用双引号对大小...

    Laravel相关的一些故障解决

    如果在Laravel中定义或修改字段类型为timestamp时遇到“Unknown column type 'timestamp' requested”错误,建议使用`DB::statement()`方法直接执行原生SQL语句来添加该字段。例如: ```php DB::statement('ALTER ...

    Tapestry字典0.1.pdf

    - **示例**: `<tapestry:message id="error.invalid">无效输入</tapestry:message>` **2.4 弹出框校验** - **实现方式**: 通过JavaScript结合Tapestry API实现弹出框显示校验结果。 - **应用场景**: 实时反馈用户...

    uboott移植实验手册及技术文档

    /* invalid alignment */ } /* chip Enable */ NFCONF &= ~0x800; for(i=0; i; i++); for(i=start_addr; i (start_addr + size);) { /* READ0 */ NFCMD = 0; /* Write Address */ NFADDR = i & 0...

Global site tag (gtag.js) - Google Analytics