MySQL保存/加载问题

时间:2013-04-09 15:42:06

标签: java mysql database

好的所以我有一个程序可以将新玩家添加到数据库中,并将用户加载到列表中。问题是当我删除用户时,然后去添加新用户添加到新用户所在位置的新用户。基本上因为那个地方现在是免费的,我使用:

rs.moveToInsertRow();

有没有办法在添加新播放器时“始终”添加到数据库的末尾。就像从表中删除一行以使数据库压缩所以它没有间隙?

这是代码:

public static void Save() {      尝试     {

String Name = "#####";
     String Pass= "#####";
    String Host = "######";
        Connection con = DriverManager.getConnection(String.format(
    "jdbc:mysql://%s:%s/%s", Host, "####", "####"),
    Name, Pass);
      Statement stmt = con.createStatement (ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);



    String sql = "SELECT * FROM Accounts";
        ResultSet rs = stmt.executeQuery(sql);


     rs.moveToInsertRow( );

        String userName= TestForm.UsernameTextField.getText(); //make this equal to whats in textfield
        String password= TestForm.PasswordTextField.getText(); //make this equal to whats in textfield

        String insertQuery="insert into Accounts (`Username`,`Password`) values ('"+userName+"','"+password+"');";
        stmt.executeUpdate(insertQuery);

     stmt.close();
     rs.close();
}

catch(Exception e)
{
    System.out.println("ERROR");
    e.printStackTrace();
}


}

1 个答案:

答案 0 :(得分:0)

要解决此问题,请添加一列“id”。该列应为auto increment。同时让您Username独一无二。