整数とJSONBデータを受け取る関数を実行する必要があります。通常のコンソールで 、私はこのようにそれを実行します:SQLAlchemyの 'execute'を使用してJSONBを挿入する方法はありますか?
select my_func(0, '{"foo": "bar"}'::jsonb)
これは、私はそれがSQLAlchemyのに働くだろうと想定する方法である:
params = {'p1': 0, 'p2': JSONB('{"foo": "bar"}'))}
result = db.engine.execute(text('select my_func(:p1, :p2)'), params)
しかし、それはしません。挿入しようとしているJSONBであることをSQLAlchemyに理解させるにはどうすればいいですか?
私が探していたもの!私はこの質問を投稿した直後にSQLの文字列にキャストすることを実現し、それを "回避策"として使用しました。しかし、bindparamsはそれを行うための公式の方法のように見えるので、一緒に行くでしょう! – fgblomqvist