📅  最后修改于: 2023-12-03 15:16:03.225000             🧑  作者: Mango
在Java中,与数据库交互最常用的方式就是使用JDBC API。而在JDBC API中,与执行SQL语句有关的主要有三个方法:JavaExecute()
、querry()
和Update()
。本文将介绍这三个方法的区别。
JavaExecute()
方法可以用于执行任意的SQL语句,包括对数据库进行修改的语句。它返回一个布尔值,表示执行结果是否成功。如果SQL语句是查询语句,则返回false。下面是一个使用JavaExecute()
方法执行增加数据操作的示例代码:
try {
Statement stmt = conn.createStatement();
String sql = "INSERT INTO student (name, age) VALUES ('张三', 18)";
boolean result = stmt.execute(sql);
// result的值为true,表示执行成功
} catch (SQLException e) {}
querry()
方法主要用于执行查询语句,并返回一个ResultSet
对象,该对象包含查询结果。下面是使用querry()
方法执行查询操作的示例代码:
try {
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM student";
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
System.out.println(rs.getString("name") + " " + rs.getInt("age"));
}
} catch (SQLException e) {}
在实际应用中,我们经常需要在查询语句中使用参数,这时可以使用PreparedStatement
对象替代Statement
对象执行查询操作,这也是推荐的方式。下面是一个使用PreparedStatement
对象执行查询操作的示例代码:
try {
PreparedStatement ps = conn.prepareStatement("SELECT * FROM student WHERE name = ?");
ps.setString(1, "张三");
ResultSet rs = ps.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("name") + " " + rs.getInt("age"));
}
} catch (SQLException e) {}
Update()
方法主要用于执行对数据库进行修改的操作,例如:增加、删除或更新数据。它返回一个整数,表示修改操作所影响的记录数。下面是使用Update()
方法执行删除操作的示例代码:
try {
Statement stmt = conn.createStatement();
String sql = "DELETE FROM student WHERE name = '张三'";
int rows = stmt.executeUpdate(sql);
// rows的值为被删除的行数
} catch (SQLException e) {}
需要注意的是,在使用Update()
方法时也可以使用PreparedStatement
对象来代替Statement
对象执行修改操作。
JavaExecute()
方法可以执行任意SQL语句,但它不适合执行查询语句;querry()
方法适用于执行查询语句,并可以使用PreparedStatement
对象来传递参数;Update()
方法用于执行对数据库进行修改的操作。在实际应用中,应根据不同的需求选择不同的方法,以达到更好的性能和可读性。