2016-06-01 25 views
0

sqlalchemyを使用してdictsのリストからオブジェクトを作成または更新したいとします。 session.bulk_update_mappings(MyObject, list_of_dicts)sqlalchemy:一括挿入または更新マッピング

そして、私はlist_of_dictsからいくつかがある場合、問題は、私は例のために、整合性エラーを取得していますということですが、データベースに含まれていない:ような何かをやって

私は、一組のオブジェクトに対してbulk_update_mappingsとbulk_insert_mappingsを組み合わせる方法を探しています。

+0

どのバックエンドですか? MySQL? PostgreSQL? – univerio

+0

sqlite3バックエンド –

答えて

0

これはDBに固有です。この答えを見てみましょう:あなたはあなたが持っていることを確認してください

INSERT OR IGNORE INTO ... UPDATE ... 

を使用してsqliteの中で同じ結果を得ることができますように、我々は

INSERT ... ON DUPLICATE KEY UPDATE ... 

を使用することで、この問題を解決するためのMySQLではSQLite UPSERT - ON DUPLICATE KEY UPDATE

に見えますDBがdupを識別できるように定義された適切なプライマリ(またはユニーク)キー。

関連する問題