「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > JSONB データを使用した Golang QueryRow の「sql: Expected 1 destination argument in Scan」エラーを解決する方法

JSONB データを使用した Golang QueryRow の「sql: Expected 1 destination argument in Scan」エラーを解決する方法

2024 年 11 月 12 日に公開
ブラウズ:466

How to Resolve

“sql: Expected 1 destination argument in Scan” JSONB データを使用した Golang QueryRow のエラー

この問題は、db を使用しようとすると発生します。 QueryRow を使用して JSONB 列からデータを取得し、結果を複数の宛先引数に保存します。ただし、クエリはフィールドを 1 つだけ返し、「スキャンで宛先引数が 1 つ必要です」エラーが発生します。

この問題を解決するには、いくつかの方法があります:

  • クエリで複数のフィールドを返す:
    各フィールドを個別の列として返すようにクエリを変更し、各値を独自の宛先引数に格納できるようにします:
err := db.QueryRow("SELECT data->>'id', data->>'type', data->>'title' FROM message WHERE data->>'id'=$1"
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3