title: SQL Alchemy ResultProxy.rowcount should not be zero
body: <p>Does anyone know how to get the row count from an SQL Alchemy query ResultProxy object without looping through the result set? The ResultProxy.rowcount attribute shows 0, I would expect it to have a value of 2. For updates it shows the number of rows affected which is what I would expect.</p>
  
  <pre><code>from sqlalchemy import create_engine
  from sqlalchemy.orm import sessionmaker
  
  engine = create_engine(
      'oracle+cx_oracle://user:pass@host:port/database'
      )
  
  session = sessionmaker(
      bind = engine
      , autocommit = False
      , autoflush = False
      )()
  
  sql_text = u"""
      SELECT 1 AS Val FROM dual UNION ALL
      SELECT 2 AS Val FROM dual
      """
  
  results = session.execute(sql_text)
  
  print '%s rows returned by query...\n' % results.rowcount
  print results.keys()
  
  for i in results:
      print repr(i)
  </code></pre>
  
  <p>Output:</p>
  
  <pre><code>0 rows returned by query...
  
  [u'val']
  (1,)
  (2,)
  </code></pre>