SQLAlchemy リフレクションを使用して、テーブルにデータを挿入/更新するにはどうすればよいですか?
ここで詳しく説明されているように、SQLAlchemy Reflection を使用して特定のテーブルをクエリする方法を理解したところです。データの操作が完了したので、データベースに保存したいのですが、その方法がわかりません。これが私がこれまでに試したことです。
class Member(Base):
__table__ = Table('member', Metadata, autoload=True)
def set_password(self, member_id, password):
data = None
for data in session.add( self.__table__.c.member_id, self.__table__.c.parking_slot_id):
self.__table__.c.id = member_id
self.__table__.c.password = password
session.flush()
それは失敗します:
Traceback (most recent call last):
File "/home/workspace/testmod/src/tester.py", line 44, in <module>
m.set_password(m, 1, "password")
File "/home/workspace/testmod/src/tester.py", line 36, in set_password
for data in session.add(self.__table__.c.id, self.__table__.c.password):
File "/usr/local/lib/python3.2/dist-packages/SQLAlchemy-0.8.0b2-py3.2.egg/sqlalchemy/orm/session.py", line 1363, in add
if _warn and self._warn_on_events:
File "/usr/local/lib/python3.2/dist-packages/SQLAlchemy-0.8.0b2-py3.2.egg/sqlalchemy/sql/expression.py", line 1932, in __bool__
raise TypeError("Boolean value of this clause is not defined")
TypeError: Boolean value of this clause is not defined
では、反映されたテーブルを更新/挿入するにはどうすればよいでしょうか?