【发布时间】:2016-03-02 20:10:35
【问题描述】:
我正在尝试使用 Java JDBC 更新我的表。但我不知道如何使用 Prepared Statement 调用我的主键。我尝试为我的数据库列创建一个USER_ID 对象,但不知道从哪里开始。我将如何确定我是否已经更新了我的数据库?
代码
String updateEmployee = employeeTf.getText();
String updateDepartment = departmentTf.getText();
if(updateEmployee.isEmpty() && updateDepartment.isEmpty()){
JOptionPane.showMessageDialog(null, "You didn't update it");
}
else if(updateEmployee.isEmpty()){
JOptionPane.showMessageDialog(null, "Please update your name");
}
else if(updateDepartment.isEmpty()){
JOptionPane.showMessageDialog(null, "Please update your department");
}
else{
String updateQuery = "UPDATE SAMPLE SET EMPLOYEENAME = ?, DEPARTMENT = ? WHERE USER_ID = ?";
try(Connection con = DBUtilities.getConnection(DBType.JDBC);
PreparedStatement myPs = con.prepareStatement(updateQuery);){
myPs.setString(1, employeeTf.getText());
myPs.setString(2, departmentTf.getText());
myPs.setInt(3, "WHAT GOES HERE");
//Execute insert SQL Statement
myPs.executeUpdate();
System.out.print("Updated");
} catch (SQLException ex) {
DBUtilities.processException(ex);
}
}
【问题讨论】:
-
我不明白你在问什么,也许你应该改一下
-
检查您的数据库以查看它是否已更新。我希望这就是你的意思。参考这个docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html
-
不,我没有运行我的数据库。因为在我的索引 3 中。我不知道我会先做什么,所以我可以执行我的查询。我需要用返回类型包装我的整个代码吗?谢谢。
-
如果您正在谈论登录用户 ID,那么您可以使用会话来获取用户 ID,或者如果您正在谈论员工用户 ID,那么它应该在您的员工 Tf 中,请再次检查您的数据库或发布您的整个代码