oracle 存储过程 返回结果集 游标

create or replace procedure CODE_PROC(codeNo in VARCHAR2,
p_cursor out sys_refcursor)
is
str1 varchar2(20);
str2 varchar2(20);
begin
if length(codeNo)=2 then
str1:=codeNo||'%00';
str2:=codeNo||'0000';
elsif length(codeNo)=4 then
str1:=codeNo||'%';
str2:=codeNo||'00';
end if;
OPEN p_cursor FOR
select code_no,code_name from tb_code
where code_no like str1 and code_no!=str2;
end CODE_PROC;


<resultMap id="code_proc" class="com.xxx.Code" >
<result property="codeNo" column="code_no"/>
<result property="codeName" column="code_name"/>
</resultMap>
<parameterMap id="parameter-map" class="java.util.HashMap">
<parameter property="codeNo" jdbcType="VARCHAR" javaType="java.lang.String" mode="IN"/>
<parameter property="p_cursor" jdbcType="ORACLECURSOR" javaType="java.sql.ResultSet" mode="OUT" />
</parameterMap>
<procedure id="getCodeList" parameterMap="parameter-map" resultMap="code_proc">
{call PROV_CODE_PROC(?,?)}
</procedure>

public List<Code> getCodeList(String codeNo) {
Map parameterMap = new HashMap();
parameterMap.put("codeNo", codeNo);
return this.executeQueryForList("getCodeList", parameterMap);
}

java.sql.sqlException:类型长度大于最大值 数据库驱动问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值