如何使用JDBC将数据更新到数据库

时间:2017-08-25 07:11:37

标签: java jdbc

new Promise

尝试将数据更新到数据库我无法更新,sql查询正在执行,但数据没有更新到数据库。

1 个答案:

答案 0 :(得分:1)

根据您的代码段,您的代码正在尝试更新数据库,但间接陷入不必要的过程。这是我的更正,假设我们在数据库中有表(注册)由结构组成 - > emailId(varchar 10),password(varchar 8)。

假设您需要更新“注册”,对于包含emailID =“gmail001”的每一行,您将密码设置为“myPassword”。用于更新的SQL语句是UPDATE registration SET password = "myPassword" WHERE emailId="gmail001"

回到你的代码,而不是使用'Statement'类,你更喜欢使用'PreparedStatement'类来预配置SQL语句。以下是我的更正:

Class.forName("oracle.jdbc.driver.OracleDriver");
Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:xe", "system", "9900479852");
String sql = "UPDATE registration SET password=? WHERE emailID=?";
String newPassword = "myPassword";
String keyEmailId = "gmail001";

try{
    PreparedStatement stat = con.prepareStatement(sql);
    stat.setString(1, newPassword);
    stat.setString(2, keyEmailId);
    stat.executeUpdate();
}catch(SQLException ex){
    ex.printStackTrace();
} 
} 

有关更多信息,请访问用于JDBC实现的oracle javaSE教程 - > https://docs.oracle.com/javase/tutorial/jdbc/basics/prepared.html