IBATIS列名无效

作者:xiuson, 原文发表于:http://www.xiuson.com/?p=66


最近在用ibatis连接Oracle,出现了几种列名无效的情况:

— The error occurred in com/kingdee/youshang/basedata/mapper/ProductOnSale.xml.
— The error occurred while applying a result map.
— Check the ProductOnSale.ProductOnSaleResult.
— Check the result mapping for the ‘id’ property.
— Cause: java.sql.SQLException: 列名无效]; SQL was [] for task [SqlMapClient operation]

将一些可能的原因列出来:

一、SQL语句映射文件:

1.查询语句返回的结果字段集不是所对应resultMap里面映射字段集的父集或相等,例如:

resultMap 映射为:

<resultMap class=”ProductOnSale” id=”ProductOnSaleResult”>
<result column=”FID” javaType=”long” jdbcType=”BIGINT” property=”id”/>
<result column=”FFUNDNAME” javaType=”string” jdbcType=”VARCHAR” property=”fundname”/>
</resultMap>

 

而SQL返回只有FFUNDNAME(没有FID):

<select id=”findProducts” resultMap=”ProductOnSaleResult”>/*dialect*/
SELECT FFUNDNAME FROM T_BS_PRODUCT_ON_SALE POS
</select>

2.resultMap配置里面的字段名前面加了表名:

<resultMap id=”ProductOnSaleResult”>
<result column=”POS.FID” javaType=”long” jdbcType=”BIGINT” property=”id”/>
<result column=”POS.FFUNDNAME” javaType=”string” jdbcType=”VARCHAR” property=”fundname”/>
</resultMap>


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值