JDBC语句
Java JDBC语句java.sql.Statement接口用于对关系数据库执行SQL语句。我们可以从JDBC连接获取JDBCStatement。一旦有了JavaStatement实例,我们就可以执行数据库查询或者数据库更新。该Java JDBCStatement教程将说明如何使用Statement执行查询,更新以及完成后如何正确关闭Statement实例。
创建语句
为了使用Java JDBCStatement,首先需要创建一个Statement。这是创建JavaStatement实例的示例:
Statement statement = connection.createStatement();
" connection"实例是一个Java JDBC Connection实例。
通过语句执行查询
一旦创建了JavaStatement对象,就可以对数据库执行查询。为此,我们可以调用其executeQuery()方法,并传递一条SQL语句作为参数。 " Statement" executeQuery()方法返回一个Java JDBC ResultSet,可用于导航查询的响应。这是调用Java JDBCStatement``executeQuery()并导航返回的ResultSet的示例:
String sql = "select * from people";
ResultSet result = statement.executeQuery(sql);
while(result.next()) {
String name = result.getString("name");
long age = result.getLong ("age");
}
记住,ResultSet完成后需要关闭。
通过语句执行更新
我们还可以通过Java JDBCStatement实例执行数据库的更新。例如,我们可以通过Statement实例执行SQL插入,更新或者删除操作。这是一个通过Java JDBCStatement实例执行数据库更新的示例:
Statement statement = connection.createStatement(); String sql = "update people set name='John' where id=123"; int rowsAffected = statement.executeUpdate(sql);
由statement.executeUpdate(sql)调用返回的rowsAffected告诉该SQL语句影响了数据库中的多少条记录。
结束语句
完成" Statement"实例后,我们需要关闭它。我们可以通过调用实例的close()方法来关闭它的实例。这是关闭Java JDBCStatement实例的示例:
statement.close();
使用Java结束语句尝试使用资源
为了在使用后正确关闭Statement,可以在Java Try With Resources块中打开它。这是一个使用try-with-resources构造关闭Java JDBCStatement实例的示例:
try(Statement statement = connection.createStatement()) {
//use the statement in here.
} catch(SQLException e) {
}
一旦" try"块退出," Statement"将自动关闭。
Statement与PreparedStatement比较
Java JDBC API具有类似于" Statement"的接口,称为PreparedStatement。 PreparedStatement可以在SQL语句中插入参数,因此PreparedStatement可以使用不同的参数值一次又一次地重用。我们不能使用"Statement"来做到这一点。一个"Statement"需要一个完成的SQL语句作为参数。

