0
私はSQLAlchemyの新人ですので、基本的な質問でなければならないことを許してください。別のテーブルの値に基づいた単純なSQLAlchemyアップデートテーブル
データベーステーブルproperties
(オブジェクトProperty
としてSQLALchemyにマップされています)には、フィールドMEBID
が含まれています。私は別のテーブルmebs
(SQLAlchemyにMEB
としてマップされている)を持っています。私はproperties.PostCode == mebs.PostCodeのmebs.idにproperties.MEBIDフィールドを設定したいと思います。
は、私は、コマンド
update properties, mebs set properties.mebid = mebs.id where mebs.PostCode = properties.PostCode
を使用してSQLで簡単にこれを行うことができますが、SQLAlchemyの中でそれをやって苦労しています。私は、コマンド
session.query(Property, MEB).\
filter(Property.PostCode == MEB.PostCode).\
update({Property.MEBID : MEB.id})
をしようとした場合、私は
InvalidRequestError: This operation requires only one Table or entity be specified as the target.
を取得し、私はそれが、このような基本的な操作だと、これは基本的でなければならないことを知っているが、どのように行うのうち動作することはできません。