基本上有一个包含以下字段的表: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语法不起作用一样。
1条答案
按热度按时间o75abkj41#
对不起,我是个白痴,是sql语法错了。这是我现在用的那个。
不管怎样,谢谢大家