有没有人知道如何从SQL Alchemy查询ResultProxy对象获取行计数而不循环结果集?ResultProxy.rowcount属性显示0,我希望它的值为2.对于更新,它显示受影响的行数,这是我所期望的.
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)
Run Code Online (Sandbox Code Playgroud)
输出:
0 rows returned by query...
[u'val']
(1,)
(2,)
Run Code Online (Sandbox Code Playgroud) 为什么我能够使用Python 2.7.9 将Python关键字指定True为等于Python关键字False?
Python 2.7.9 (v2.7.9:648dcafa7e5f, Dec 10 2014, 10:10:46)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
>>> True
True
>>> True = False
>>> True
False
>>>
Run Code Online (Sandbox Code Playgroud)
但是当切换到Python 3.4.3时:
Python 3.4.3 (v3.4.3:9b73f1c3e601, Feb 23 2015, 02:52:03)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
>>> True = False
File "<stdin>", line 1
SyntaxError: can't assign to keyword
>>>
Run Code Online (Sandbox Code Playgroud)