首页 > 代码库 > mysql-jdbc创建Statement与执行SQL

mysql-jdbc创建Statement与执行SQL

使用JDBC创建Connection后,执行SQL需要先创建Statement

Statement stmt = connection.createStatement();

创建代码如下

public java.sql.Statement createStatement() throws SQLException {        return createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,                java.sql.ResultSet.CONCUR_READ_ONLY);    }//默认查询结果 正向循环、只读查询结果public java.sql.Statement createStatement(int resultSetType,            int resultSetConcurrency) throws SQLException {
    //检查 connection是否关闭 checkClosed(); Statement stmt
= new com.mysql.jdbc.Statement(this, this.database); stmt.setResultSetType(resultSetType); stmt.setResultSetConcurrency(resultSetConcurrency); return stmt; }

执行查询SQL时:

ResultSet rs = stmt.executeQuery("test");

返回的ResultSet的数据存放在rowData中(protected RowData rowData)。

  执行next后是一个对象数组。

Statement的关闭方法,默认在关闭statment的同时,也关闭ResultSet。

public void close() throws SQLException {		realClose(true, true);	}

.....
this.isClosed = true;
.....

 

----------------------------------------------------

1、在DriverManager.getConnection的时候创建与mysql服务端的连接

2、Statement共用同一连接。

3、关闭Connection的时候才会关系连接,也会调用关系所有statement方法closeAllOpenStatements()。

 

mysql-jdbc创建Statement与执行SQL