oracle在保存用户时,有两个属性分别是String和Date,默认为null,存储时会报如下错误:
解决方案:
在oracle中的null为不确定的意思,存储null时,mybatis解析不到oracle字段类型
解决方法:在插入语句中,加入jdbcType,如下:
#{loginIp,jdbcType=VARCHAR}
#{name,jdbcType=VARCHAR}
<wbr><span style="font-size:24px">无效的列类型:</span><wbr><span style="font-size:24px">1111</span><br><span style="font-size:24px"></span><wbr><span style="font-size:24px">Error</span><wbr><span style="font-size:24px">setting</span><wbr><span style="font-size:24px">null</span><wbr><span style="font-size:24px">parameter.</span><wbr><span style="font-size:24px">Most</span><wbr><span style="font-size:24px">JDBC</span><wbr><span style="font-size:24px">drivers</span><wbr><span style="font-size:24px">require</span><wbr><span style="font-size:24px">that</span><wbr><span style="font-size:24px">the</span><wbr><span style="font-size:24px">JdbcType</span><wbr><span style="font-size:24px">must</span><wbr><span style="font-size:24px">be</span><wbr><span style="font-size:24px">specified</span><wbr><span style="font-size:24px">for</span><wbr><span style="font-size:24px">all</span><wbr><span style="font-size:24px">nullable</span><wbr><span style="font-size:24px">parameters.</span><wbr><span style="font-size:24px">Cause:</span><wbr><span style="font-size:24px">java.sql.SQLException:</span><wbr><span style="font-size:24px">无效的列类型:</span><wbr><span style="font-size:24px">1111</span><br><span style="font-size:24px"></span><span style="font-size:24px">###</span><wbr><span style="font-size:24px">Error</span><wbr><span style="font-size:24px">updating</span><wbr><span style="font-size:24px">database.</span><wbr><span style="font-size:24px">Cause:</span><wbr><span style="font-size:24px">org.apache.ibatis.type.TypeException:</span><wbr><span style="font-size:24px">Error</span><wbr><span style="font-size:24px">setting</span><wbr><span style="font-size:24px">null</span><wbr><span style="font-size:24px">parameter.</span><br></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr></wbr>
解决方案:
在oracle中的null为不确定的意思,存储null时,mybatis解析不到oracle字段类型
解决方法:在插入语句中,加入jdbcType,如下:
#{loginIp,jdbcType=VARCHAR}
#{name,jdbcType=VARCHAR}
本文介绍在使用MyBatis框架与Oracle数据库交互时遇到的NULL值存储问题及解决方案。当尝试存储NULL值时,会出现类型不匹配的错误。解决方法是在插入语句中明确指定JDBC类型。
7977

被折叠的 条评论
为什么被折叠?



