5.3. 問い合わせの発行と結果の処理

SQL 文をデータベースに発行するときには必ず、Statement、または、PreparedStatement のインスタンスが必要です。 Statement または PreparedStatement のインスタンスがあれば、問い合わせを発行できます。 これは、結果全体を保持する ResultSet のインスタンスを返します。 次に示す Example 5-1 は、この処理を示します。

Example 5-1. JDCB で簡単な問い合わせを処理

この例は、Statement を使用して、簡単な問い合わせを発行し、各行の最初の列を表示します。

Statement st = db.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM mytable where columnfoo = 500");
while(rs.next()) {
    System.out.print("Column 1 returned ");
    System.out.println(rs.getString(1));
}
rs.close();
st.close();

この例は、PreparedStatement と問い合わせにバインドする値を使用して、同一の問い合わせを発行します。

int foovalue = 500;
PreparedStatement st = db.prepareStatement("SELECT * FROM mytable where columnfoo = ?");
st.setInt(1, foovalue);
ResultSet rs = st.executeQuery();
while(rs.next()) {
    System.out.print("Column 1 returned ");
    System.out.println(rs.getString(1));
}
rs.close();
st.close();

5.3.1. Statement または PreparedStatement インタフェースの使用

Statement、または PreparedStatement インタフェースを使用する際は、以下のことを考慮しなければいけません。

5.3.2. ResultSet インタフェースの使用

ResultSet インタフェースを使用する際、以下のことを考慮しなければいけません。