• ベストアンサー

execute()

execute()は、複数の結果を返す可能性のある SQL 文を実行するメソッドですが、実際に複数の結果を返すSQL文というのは、例えばどういうものなのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

APIリファレンスを呼んだ限りでは、 executeメソッドは、executeQueryとexecuteUpdateの両方の役割として使うことができる。 executeQueryのように使われて「検索結果がある」ときはtrueを返す。 executeQueryのように使われて「検索結果がない」ときはfalseを返す。 executeUpdateのように使われたときはfalseを返す。 ってことじゃないかしら。

参考URL:
http://java.sun.com/j2se/1.3/ja/docs/ja/api/java/sql/Statement.html
mikmik_a
質問者

お礼

何度も親切にお答えいただきありがとうございました。また機会がありましたらよろしくおねがいします。

その他の回答 (2)

回答No.2

前回の回答の前に確認しておけばよかったのですが、 javax.sql.RowSetインターフェースのexecute()だと思って答えました。 でもこれはvoidですね。ご質問は何処のexecute()だったでしょうか?

mikmik_a
質問者

補足

すみません。説明不足でした。java.sql.Statementインタフェースのexecute(String)のことです。

回答No.1

「教えて!goo」の質問や回答がデータベースにしまってあるとして、 「mikmik_aさんが発した質問」を探すSQLは複数の結果を返す、 ということでは? SELECT * FROM questionDB WHERE questioner = 'mikmik_a'; みたいな

mikmik_a
質問者

補足

ということは、複数のレコードを取得するのが、複数の結果ということですね?それでは、execute()メソッドというのは、戻り値がboolean型なのですが、実際に使用するのは、どういう場合に使用するのでしょうか?

関連するQ&A