My table in my database has 5 field. The first field (ID) is auto increment.
This is my form to add new user: (ID field not requested because it is auto increment)
Now when i add a new user, At first show, the ID
field in not display!
And after a refresh, ID displayed: (number 24)
This is my code:
public class UserPage extends JFrame implements ActionListener {
...
public void addAction() {
AddUserDialog UserDialog = new AddUserDialog(this);
Object[] myRow = new Object[]{UserDialog.getfName(), UserDialog.getlName(), UserDialog.getGender(), UserDialog.getDate()}; // how get ID here?
if (addQuery(UserDialog.getfName(), UserDialog.getlName(), UserDialog.getGender(), UserDialog.getDate())) {
model.addRow(myRow);
}
}
public boolean addQuery(String fname, String lname, String gender, String date) {
try {
Connection con;
Statement statement;
String query = "insert into UserTable(FirstName,LastName,Gender,Date) " +
"values ( '" + fname + "' , '" + lname + "' , '" + gender + "', '" + date + "' ) ";
con = DriverManager.getConnection(...);
statement = con.createStatement();
if (statement.execute(query)) {
return true;
}
} catch (SQLException sqle) {
sqle.printStackTrace();
return false;
}
return true;
}
}
How get ID to display at first time show? Thanks!
This:
public String addQuery2(String fname, String lname, String gender, String date) throws Exception {
String getMe = null;
ResultSet res = null;
try {
Connection con;
PreparedStatement pStatement;
String query = "insert into UserTable(FirstName,LastName,Gender,Date) " +
"values ( '" + fname + "' , '" + lname + "' , '" + gender + "', '" + date + "' ) ";
con = DriverManager.getConnection(...);
pStatement = con.prepareStatement(query, Statement.RETURN_GENERATED_KEYS);
pStatement.execute(query)
res = pStatement.getGeneratedKeys();
getMe = String.valueOf(res.getInt(1));
} catch (SQLException sqle) {
sqle.printStackTrace();
}
return getMe;
}
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.