Java JDBC:“SQLException:未找到列名”

Java JDBC:“SQLException:未找到列名”,java,mysql,Java,Mysql,我试着用这两个问题作为参考 然而,这些都无助于我的案子。我一直收到 java.sql.SQLException:未找到“首次登场”列 这是我的SQL 私有列表GetModelFrom昵称字符串测试引发SQLException{ 列表结果=新的ArrayList; 字符串sql=select distinct+ m、 名字+ m、 视觉的+ m、 分支机构+ m、 插图画家+ m、 首次亮相+ 从+ 成员名单为m+ 昵称为n+ 其中n.nick_id=m.nick和n.昵称LIKE?; Resul

我试着用这两个问题作为参考

然而,这些都无助于我的案子。我一直收到 java.sql.SQLException:未找到“首次登场”列

这是我的SQL

私有列表GetModelFrom昵称字符串测试引发SQLException{ 列表结果=新的ArrayList; 字符串sql=select distinct+ m、 名字+ m、 视觉的+ m、 分支机构+ m、 插图画家+ m、 首次亮相+ 从+ 成员名单为m+ 昵称为n+ 其中n.nick_id=m.nick和n.昵称LIKE?; ResultSet ret=sqlAdapter.select sql,1,测试 ; 而下一个{ result.addfillRecordret; } 返回结果; } 这是我的MYSQLAdapter

公共结果集selectString sql、int选项、对象。。。params抛出SQLException{ 预处理报表查询; 试一试{ logger.infoparams.length; query=getConnection.prepareStatementsql; } 捕获异常e{ 抛出新的错误问题+e; } resolveParametersquery,选项,参数; 返回query.executeQuery; } 这是我的fillRecord命令

私有静态MemberModel fillRecordResultSet resultSet引发SQLException{ MemberModel成员=新成员模型; member.name=resultSet.getStringname; member.branch=resultSet.getStringbranch; member.definish_3d=resultSet.getBooleanDefinish; member.visual=resultSet.getStringvisual; member.illustrator=resultSet.getStringillustrator; 返回成员; } 而这是我的会员模式

公共类成员模型{ 公共字符串名称=; 公共int社交媒体=0; 公共整数=0; 公共字符串分支=; 公共布尔值=真; 公共字符串illustrator=; 公共字符串visual=; } 我试着用

ResultSetMetaData rsmd=sqlAdapter.getConnection.prepareStatementsql.getMetaData;
forint i=1;我宁愿通过labelName尝试列编号来获取值

private static MemberModel fillRecord(ResultSet resultSet) throws SQLException {
        MemberModel member = new MemberModel();
        member.name = resultSet.getString(1);
        member.branch = resultSet.getString(3);
        member.debut_3d = resultSet.getBoolean(5);
        member.visual = resultSet.getString(2);
        member.illustrator = resultSet.getString(4);
        return member;
    }
数据库表中的列称为debut3D

顺便说一句,您没有关闭PreparedStatement和ResultSet。我会使用try with resources。

列名是debut3D not dedunch,这就是为什么会出现错误

使用正确的列名更新下一行

member.debut_3d = resultSet.getBoolean("debut3D");

你确定这是可复制的吗?我看不出你的实际代码有任何问题。我在我的XAMPP中尝试过,它工作得非常好。由于某种原因,唯一有问题的部分只有在我删除该部分的情况下才会出现——代码按照我希望的方式工作得很好。它是否按原样工作?我不认为你所问的是可复制的,因此我在上面发表了评论。不,它不起作用,因为它给了我这个错误java.sql.SQLException:未找到“首次登场”列。请参阅:
resultSet.getBoolean("debut3D"); // Instead of "debut"
member.debut_3d = resultSet.getBoolean("debut3D");