当前位置: 首页 > 面试题库 >

org.postgresql.util.PSQLException:在此ResultSet中找不到列名usuario

祝宾白
2023-03-14
问题内容

我收到以下错误:org.postgresql.util.PSQLException:在此ResultSet中找不到列名usuario。

但是,我在适当的类中正确声明了以下usuario列!

UsuariosGruposDAO.class

public Object objectFactory(ResultSet rs) {
        try {
            UsuariosGrupos usergroup = new UsuariosGrupos(rs.getString("usuario"), rs.getString("grupo"));
            return usergroup;
        } catch (SQLException e) {
            e.printStackTrace();
            // retorno do método
            return null;
        }
    }

UsuariosGrupos.class

public class UsuariosGrupos {

    private String usuario;
    private String grupo;

    public UsuariosGrupos() {
    }

    public UsuariosGrupos(String usuario, String grupo) {
        this.usuario = usuario;
        this.grupo = grupo;
    }

错误出现在以下行:

       ugList.add((UsuariosGrupos) objectFactory(rs));

我的List方法:

List<UsuariosGrupos> ugList = null;
    try {
        //Conecta no banco
        conn.conectar();
        //Prepara o preparedStatment
        stmt = (PreparedStatement) conn.getPreparedStatement("SELECT * from usuarios_grupos");
        //Executa a instrucao SQL
        ResultSet rs = stmt.executeQuery();
        ugList = new ArrayList<UsuariosGrupos>();
        //Enquanto ouver resultSet
        while (rs.next()) {
            ugList.add((UsuariosGrupos) objectFactory(rs));
        }
        System.out.println("################################UsuariosGrupos OK################################");
    } catch (SQLException e) {
        System.out.println("################################UsuariosGrupos Falhou################################");
        e.printStackTrace();
    } finally {
        conn.desconectar();
    }
    return ugList;
}

奇怪的是,当我分别测试我的列表时,数据表会显示适当的结果。但是,当我运行我的整个应用程序时,什么都没有显示,并且我收到错误消息,指出在结果集中找不到列usuario。有什么建议?

该表有两个字段:

Usuarios | Grupos

admin        2
admin        3

当我分离我的jsf代码时,它显示正常,但是当我将其存储在一个JSF文件中时,它不显示数据。


问题答案:

您的表转储将字段显示为“ Usarios”,但您正在执行rs.getString("usuario")。那不是以下内容吗?

rs.getString("usuarios")

如果那不起作用,那么我建议您调试您的代码,在该getString行上放置一个断点,然后查看ResultSet以查看其中的字段名称。



 类似资料:
  • 除了去掉“D”之外,有没有办法。从第一个查询开始,使第一个代码段不抛出错误消息? 以下是源代码:

  • 我在数据库中有以下内容: 我的实体是: 查看许多帖子,我似乎对cmodel字段有正确的注释。 更新(完成stacktrace):

  • 问题内容: 我试图找出为什么我的Web应用程序抛出一个 当我从中复制配置的一个姐妹悄悄地运行时。 我有: 通过右键单击并选择“新的持久性”从netbeans创建一个新的持久性,我不在乎我提供的实际值,但只需要在正确的目录中创建persistence.xml文件即可。 如下编辑我的context.xml,以匹配工作姐妹项目中的那个 编辑了我的web.xml以包含资源DataSource,如下所示 如

  • 有一点公式的乐趣,这让我发疯。我们有一些代码通过公式获取实体,数据库中没有链接,需要在运行时完成,因此@formula的用法。下面是课堂的样子: 公式是这样建立的: 现在,我最初直接使用列DEFAULT\u COST\u CENTER\u SAP\u CODE和DEFAULT\u WBS\u SAP\u CODE,而不使用内部select,但是在这两列上都得到了错误的无效标识符,所以我想我应该尝试

  • 我有三个表、和。 此查询在phpMyAdmin中工作。 但在java中给出“未找到列'sname'”。错误。 错误堆栈: 严重:空 请帮帮我! 提前道谢。

  • 问题内容: 这个开始让我完全疯了… 我想使用Maven创建一个Glassfish客户端应用程序。 为此,我添加了必需的gf-client依赖项: 然后,想要联系运行在相同应用程序上的我的Glassfish服务器,我进行了常规查找: 不幸的是,这样做时,我得到的只是 经过一番检查后,我注意到该客户端应用程序的CLASSPATH中存在我的文件夹。并且,根据Eclipse代码查找,应该包含此jar 。但