# executeQuery(): Example

__*executeQuery*__

```
...
public static void printResultSetStringString(String stmtText, Connection connection) {
    int count = 0;
    System.out.println("\n/* Executing query: "+stmtText+"; */");
    try {
        Statement statement = connection.createStatement();
        ResultSet resultSet = statement.~!@executeQuery(stmtText)@!~;
        System.out.println("Row#, "+resultSet.getMetaData().getColumnName(1)+", "+resultSet.getMetaData().getColumnName(2));
        while (resultSet.next()) {
            System.out.println((++count) + ") " + resultSet.getString(1)+", "+resultSet.getString(2));
        }
        resultSet.close();
        statement.close();
    } catch (Exception e) {
        System.out.println("Error: "+e.toString());
    }
}
```
----------------------------------------------------

你可以看出程序分别关闭了 ResultSet 和 Statement 对象。

演示脚本:

对于 macOS 和 Linux:https://github.com/pingcap/tidb-course-201-lab/blob/master/scripts/09-demo-jdbc-execute-query-01-show.sh

对于 Windows:https://github.com/pingcap/tidb-course-201-lab/blob/master/scripts/09-demo-jdbc-execute-query-01-show.bat


```
...
public static void printResultSetStringString(String stmtText, Connection connection) {
    int count = 0;
    System.out.println("\n/* Executing query: "+stmtText+"; */");
    try {
        Statement statement = connection.createStatement();
        ResultSet resultSet = statement.executeQuery(stmtText);
        System.out.println("Row#, "+resultSet.getMetaData().getColumnName(1)+", "+resultSet.getMetaData().getColumnName(2));
        while (resultSet.next()) {
            System.out.println((++count) + ") " + resultSet.getString(1)+", "+resultSet.getString(2));
        }
        resultSet.close();
        statement.close();
    } catch (Exception e) {
        System.out.println("Error: "+e.toString());
    }
}
```
