我有一个与 Java 和 mySQL 相关的问题。 我有一个登录名,我想从一行中提取一些值。 这是我的 table 的样子:
登录成功后,我想将以下内容保存到 2 个变量中: (我的登录有效,我刚刚粘贴了我感兴趣的代码块)
当前登录int的硬币 用户在字符串中拥有的权限
在主类中我声明了以下内容
public static int coins;
public static String status;
这是代码:
String sqlQuery = "SELECT * FROM username WHERE username = ? and password = MD5(?)";
PreparedStatement pst = connect.prepareStatement( sqlQuery );
pst.setString( 1, Proiect_final.username );
pst.setString( 2, Proiect_final.pw );
// // Coins extraction !
// String sqlQuery1 = "SELECT coins,status FROM username WHERE username = ?";
// PreparedStatement pst1 = connect.prepareStatement(sqlQuery);
// pst1.setString(1, Proiect_final.username);
ResultSet rs = pst.executeQuery();
if( rs.next() ) {
coins = [?];
System.out.println("You did it!");
mainFrm abba = new mainFrm();
abba.setVisible(true);
}
如果有任何帮助,我将不胜感激。
最佳答案
考虑始终检索必要的列,而不是表中的所有列。因此,将查询更改为:
String sqlQuery = "SELECT coins, status FROM username WHERE username = ? and password = MD5(?)";
然后,执行它并检索“coins”
列:
if (rs.next() ) {
coins = rs.getInt("coins");
status = rs.getString("status");
//...
}
关于Java - 从 mySQL 表中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23503986/