[Java Idea]java.sql.SQLException: 无法转换为内部表示的解决方案

时间:2024-04-07 10:48:25

问题描述:

使用JDBC查询报如下错误:

[Java Idea]java.sql.SQLException: 无法转换为内部表示的解决方案

问题解析: 

追溯到代码21行:

[Java Idea]java.sql.SQLException: 无法转换为内部表示的解决方案

21行是单纯的利用println语句输出结果的部分,所以只能是resultSet.getInt()等获取数据的部分出了问题。

不能转化为内部表示,考虑是数据类型转换部分有问题。

回头看表结构:

 [Java Idea]java.sql.SQLException: 无法转换为内部表示的解决方案

结合表的列数据类型与最后输出使用的数据类型进行比较,发现username在表中是varchar2类型,而resultSet使用getInt()进行获取。

解决方案:

将geiInt()方法修改为getString(),继续查看后面代码的数据类型对应情况并修改,问题得到解决。

 题外话:

这个问题其实说起来有点弱智,单纯的没有进行思考就强行使用getInt()方法获取数据。此次出现此问题主要还是因为笔者自以为是地认为getInt()是获取的resultSet下标,将该方法与别的方法混淆了。还是应该多写多练啊。

2018.8.28