簡體   English   中英

Java-從mySQL表獲取值

[英]Java - Getting a value from a mySQL table

我有一個與Java和mySQL有關的問題。 我有一個登錄名,我想從一行中提取一些值。 這是我的桌子的樣子: 在此處輸入圖片說明

登錄成功后,我想將以下內容保存到2個變量中:(我的登錄有效,我只是將代碼塊粘貼到了我感興趣的地方)

當前登錄int的硬幣用戶在String中擁有的特權

在主類中,我聲明了以下內容

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");
    //...
}

您正在尋找的方法是

rs.getInt("coins");

rs.getString("status");

另外,也可以不選擇使用全稱“ *”,而可以專門命名這兩列,然后按列順序檢索它們。 請參閱此處的相關API文檔: http : //docs.oracle.com/javase/7/docs/api/java/sql/ResultSet.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM