title: Statement.execute(sql) vs executeUpdate(sql) and executeQuery(sql)
body: <p>I have a question related to this method: <code>st.execute(sql);</code> where st obviously is a Statement object.
  Directly from <a href="http://docs.oracle.com/javase/tutorial/jdbc/basics/processingsqlstatements.html#executing_queries" rel="noreferrer">this</a> oracle java tutorial: </p>
  
  <blockquote>
    <p>execute: Returns true if the first object that the query returns is a
    ResultSet object. Use this method if the query could return one or
    more ResultSet objects. Retrieve the ResultSet objects returned from
    the query by repeatedly calling Statement.getResutSet.</p>
  </blockquote>
  
  <p>What is meant by "<strong><em>one or more ResultSet objects</em></strong>"? How is it possible to manage them once got an array of <code>ResultSet</code>? 
  Whereas <code>st.executeQuery(sql)</code> and <code>st.executeUpdate(sql)</code> are very clear. It's not (at least to me) the aim of <code>st.execute(sql)</code> which can also return an int as if it was updated a table.</p>
  
  <p>Thanks in advance</p>