0

クラスExecutionContextの下のソースsqlalchemy/engine/base.pyを調べましたが、文書化されているように、このメソッド postfetch_cols() が含まれていません。0.7.7 と 0.6.9 の安定バージョンと 0.8 をチェックインしました。

また、メソッドが存在しないことを確認しました。

from sqlalchemy import *
engine = create_engine('sqlite:///:memory:')
metadata = MetaData(bind=engine)
t = Table('tableName', metadata, Column('a', String), Column('b', Integer) )
t.create()
engine.execute( t.insert(), {'a':'1', 'b':2} )
res = engine.execute(text('select * from tableName'))
res.postfetch_cols() #or res.context.postfetch_cols()

# AttributeError: 'SQLiteExecutionContext' object has no attribute 'postfetch_cols'

sqlalchemy ドキュメント: http://docs.sqlalchemy.org/en/rel_0_7/core/connections.html?highlight=postfetch_cols#sqlalchemy.engine.base.ResultProxy.postfetch_cols

4

2 に答える 2

0

postfetch_cols() は、デフォルトがオフになっている可能性のある INSERT および UPDATE ステートメントにのみ適用されます。現在、実行コンテキストは、このコレクションが適用されないステートメントの場合に、空のコレクションを配置する (またはエラーを発生させる) 手順を実行しません。

于 2012-06-08T12:45:01.240 に答える
0

ドキュメントに記載されている関数は複数形 ( postfetch_cols) ですが、単数形 ( ) で使用していますpostfetch_col

それはあなたのペーストのタイプミスですか?

于 2012-06-07T00:54:32.013 に答える