mybatis 操作存储过程 小细节错误

简介: 项目开发的时候遇到一个错误:

项目开发的时候遇到一个错误:

<span style="font-size:24px;">org.springframework.jdbc.BadSqlGrammarException:

### Error querying database.  Cause: java.sql.SQLException: ORA-06550: 第 8 行, 第 4 列:

PLS-00103: 出现符号 ";"在需要下列之一时:

. ( ) , * @ % & = - + < / >

  at in is mod remainder not rem => <an exponent (**)>

  <> or != or ~= >= <= <> and or like like2 like4 likec between

  || indicator multiset member submultiset

符号 ")" 被替换为 ";" 后继续。


### The error may exist in file [D:\Program Files\Workspaces\MyEclipse for Spring 2014\salesmanb2b\WebRoot\WEB-INF\classes\sqlmap\ProductMapper.xml]

### The error may involve com.salesmanb2b.mapper.ProductMapper.getProductsProc-Inline

### The error occurred while setting parameters

### SQL: {call GET_PRODUCTS   (    ?,    ?,    ?,    ?,    ?    }

### Cause: java.sql.SQLException: ORA-06550: 第 8 行, 第 4 列:

PLS-00103: 出现符号 ";"在需要下列之一时:

. ( ) , * @ % & = - + < / >

  at in is mod remainder not rem => <an exponent (**)>

  <> or != or ~= >= <= <> and or like like2 like4 likec between

  || indicator multiset member submultiset

符号 ")" 被替换为 ";" 后继续。


; bad SQL grammar []; nested exception is java.sql.SQLException: ORA-06550: 第 8 行, 第 4 列:

PLS-00103: 出现符号 ";"在需要下列之一时:

. ( ) , * @ % & = - + < / >

  at in is mod remainder not rem => <an exponent (**)>

  <> or != or ~= >= <= <> and or like like2 like4 likec between

  || indicator multiset member submultiset

符号 ")" 被替换为 ";" 后继续。</span>



原来是映射文件出错


      <select id="getProductsProc" parameterType="java.util.Map" statementType="CALLABLE">

 

       {call GET_PRODUCTS

       (

        #{proid,jdbcType=INTEGER, mode=IN},

        #{product1,javaType=ResultSet,jdbcType=CURSOR,resultMap=product,mode=OUT},

        #{product2,javaType=ResultSet,jdbcType=CURSOR,resultMap=product,mode=OUT},

        #{product3,javaType=ResultSet,jdbcType=CURSOR,resultMap=product,mode=OUT},

        #{product4,javaType=ResultSet,jdbcType=CURSOR,resultMap=product,mode=OUT}

        )

        }  

 

    </select>  


call后面 右括号  忘了写



这是一个小细节




PS:


对于Oracle存储过程


建议 用navicat 编写好之后运行 成功再去编写代码

1.png

相关文章
|
4月前
|
XML Java 数据库连接
【MyBatis】MyBatis操作数据库(一)
【MyBatis】MyBatis操作数据库(一)
37 1
|
4月前
|
XML Java 数据库连接
如何使用 MyBatis 来进行增、删、改、查操作
如何使用 MyBatis 来进行增、删、改、查操作
57 2
|
4月前
|
SQL 存储 Java
基于MyBatis的增删改查操作
基于MyBatis的增删改查操作
33 1
|
4月前
|
存储 关系型数据库 MySQL
MySql创建带事务操作的存储过程
MySql创建带事务操作的存储过程
|
4月前
|
缓存 Java 数据库连接
我们后端程序员不是操作MyBatis的CRUD Boy
大家好,我是南哥。一个对Java程序员进阶成长颇有研究的人,今天我们接着新的一篇Java进阶指南。为啥都戏称后端是CRUD Boy?难道就因为天天怼着数据库CRUD吗?要我说,是这个岗位的位置要的就是你CRUD,你不得不CRUD。哪有公司天天能给你搭建高并发、高可用、大数据框架的活呢,一条业务线总要成长吧,慢慢成熟了就要装修工来缝缝补补、美化美化,也就是CRUD的活。不能妄自菲薄CRUD Boy,我们是后端工程师。今天来指南下操作数据库之MyBatis框架。
114 3
我们后端程序员不是操作MyBatis的CRUD Boy
|
3月前
|
SQL 缓存 Java
使用MyBatis优化Java持久层操作
使用MyBatis优化Java持久层操作
|
4月前
|
存储 关系型数据库 MySQL
MYSQL--存储过程操作
MYSQL--存储过程操作
|
3月前
|
SQL 缓存 Java
使用MyBatis优化Java持久层操作
使用MyBatis优化Java持久层操作
|
4月前
|
Java 数据库连接 数据库
Spring日志完结篇,MyBatis操作数据库(入门)
Spring日志完结篇,MyBatis操作数据库(入门)
|
5月前
|
XML Java 数据库连接
利用MyBatis框架操作数据库2
利用MyBatis框架操作数据库
39 2

热门文章

最新文章