在本文中,我们将通过示例学习常用的JDBC Statement接口方法。
文章目录
- 1、简述
- 2、Statement 类图
- 3、Statement 接口常用方法
- 3.1、boolean execute(String sql) throws SQLException
- 3.2、boolean execute(String sql,int autoGeneratedKeys) throws SQLException
- 3.3、boolean execute(String sql,int[] columnIndexes) throws SQLException
- 3.4、boolean execute(String sql,String[] columnNames) throws SQLException
- 3.5、int[] executeBatch() throws SQLException
- 3.6、ResultSet executeQuery(String sql) throws SQLException
- 3.7、int executeUpdate(String sql) throws SQLException
- 3.8、int executeUpdate(String sql,int autoGeneratedKeys) throws SQLException
- 3.9、int executeUpdate(String sql,int[] columnIndexes) throws SQLException
- 3.10、int executeUpdate(String sql,String[] columnNames) throws SQLException
- 4、Statement 接口示例
1、简述
Statement 用于执行静态SQL语句并返回其产生的结果的对象。
默认情况下,每个Statement对象只能同时打开一个ResultSet对象。 因此,如果一个ResultSet对象的读取与另一个对象的读取是交错的,则每个都必须由不同的Statement对象生成。 如果存在打开的语句,Statement接口中的所有执行方法都会隐式关闭该语句的当前ResultSet对象。
2、Statement 类图
3、Statement 接口常用方法
3.1、boolean execute(String sql) throws SQLException
执行给定的SQL语句,该语句可能返回多个结果。 在某些(不常见)情况下,单个SQL语句可能返回多个结果集。 通常,除非您(1)执行您知道可能会返回多个结果的存储过程,或者(2)您正在动态执行未知的SQL字符串,否则您可以忽略此设置。
注意:不能在PreparedStatement或CallableStatement上调用此方法。
3.2、boolean execute(String sql,int autoGeneratedKeys) throws SQLException
执行给定的SQL语句,该语句可能返回多个结果,并向驱动程序发出信号,告知应自动生成键。 如果SQL语句不是INSERT语句,或者不是能够返回自动生成的键的SQL语句,驱动程序将忽略此信号。
在某些(不常见)情况下,单个SQL语句可能返回多个结果集。 通常,除非您(1)执行您知道可能会返回多个结果的存储过程,或者(2)您正在动态执行未知的SQL字符串,否则您可以忽略此设置。
autoGeneratedKeys: 一个常量,指示是否应使用getGeneratedKeys方法自动生成键;
3.3、boolean execute(String sql,int[] columnIndexes) throws SQLException
执行给定的SQL语句,该语句可能返回多个结果,并向驱动程序发出信号,使用给定数组中指示的自动生成的键用于检索。 该数组包含目标表中各列的索引,这些列包含应提供的自动生成的键。 如果SQL语句不是INSERT语句,或者不是能够返回自动生成的键的SQL语句,驱动程序将忽略该数组。
注意:不能在Pr