問題タブ [partial-index]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
105 参照

postgresql - 部分インデックスを使用したSQLAlchemy Postgresアップサート

ID、都市、名前の 3 つのフィールドを持つ Person というテーブルがあります。都市は null になる可能性があるため、2 つの部分的な一意のインデックスがあります。1 つは都市が null ではない ID と都市、もう 1 つは都市が null の ID です。

SQLAlchemy を使用して、これらの部分インデックスを使用して upsert ステートメントを作成したいのですが、構文がわかりません。現在私は持っています:

しかし、実行しようとすると取得します

sqlalchemy.exc.ProgrammingError: (psycopg2.errors.InvalidColumnReference) ON CONFLICT 仕様に一致する一意または除外制約がありません

これはどのように機能しますか?純粋な SQL を実行する以外に方法はありますか?