Czy ktoś wie, jak uzyskać liczbę wierszy z obiektu zapytań SQL Alchemia ResultProxy bez przechodzenia przez zestaw wyników? Atrybut ResultProxy.rowcount pokazuje 0, spodziewałbym się, że będzie miał wartość 2. Dla aktualizacji pokazuje liczbę uszkodzonych wierszy, co jest tym, czego oczekiwałbym.SQL Alchemia ResultProxy.rowcount nie powinna być zerem
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
engine = create_engine(
'oracle+cx_oracle://user:[email protected]: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)
wyjściowa:
0 rows returned by query...
[u'val']
(1,)
(2,)