如何使用java从数据库返回单个数据?

axr492tv  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(317)

基本上有一个包含以下字段的表:id(pk)、name、total of vots。我需要为该程序使用的每个回合的特定id添加一票,我只打算获得该id的总票数,添加加一票,并将其再次存储在同一id中。我使用以下代码:

String user = "root";
    String pass = "";
    String url = "jdbc:mysql://127.0.0.1:3306/provapaoo_22_06_2018";

    String takeVotes = String.format("select `Total Votes` "
            + "from `%s` where id= ?", nameOfTable);

    String addVote = String.format("update `%s` set "
            + "`Total votes` = ?", nameOfTable);
    try{
    Connection conec =
            DriverManager.getConnection(url, usuario, senha);

        PreparedStatement comand =
                conexão.prepareStatement(takeVotes);

        comando.setInt(1, id);

        ResultSet result = comand.executeQuery();

        int qtdVotes = 0;

        while(resultado.next()){
            qtdVotes = result.getInt("Total Votes");
        }

        qtdVotes++;

        comand = conec.prepareStatement(addVote);

        comand.setInt(1, qtdVotes);

        comand.executeUpdate();

        comand.close();
        conec.close();

    }catch(SQLException e){
        e.printStackTrace();
    }

程序运行良好,但问题是结果集,它不仅返回该id的总票数,还返回每个人的总票数,这几乎就像sql语法不起作用一样。

o75abkj4

o75abkj41#

对不起,我是个白痴,是sql语法错了。这是我现在用的那个。

String addVote = String.format("update `%s` set "
            + "`Total votes` = ? where id = ?", nameOfTable);

不管怎样,谢谢大家

相关问题