ホームページ >バックエンド開発 >Golang >pq.Array を使用して SQL クエリの引数として整数スライスを渡すにはどうすればよいですか?

pq.Array を使用して SQL クエリの引数として整数スライスを渡すにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-10 02:11:08148ブラウズ

How Can I Use pq.Array to Pass Integer Slices as Arguments in SQL Queries?

pq.Array を使用した SQL クエリへのスライス引数の組み込み

引数として整数のスライスを含む SQL クエリを実行しようとすると、ユーザーは、「SQL: 引数 $1 を変換しています。型: サポートされていない型 []int、スライスのINT。」この問題を解決するには、pq.Array 関数を利用できます。

問題:

次のコードを考えてみましょう:

somevars := []int{1, 2, 3, 4}
rows, err := db.Query("SELECT c1,c2 FROM table"+tid+" WHERE c1 IN(,,,);", somevars)

これを実行しますクエリによりエラーが発生します。「SQL: 引数 $1 を変換しています。タイプ: サポートされていないタイプ []int、スライスのint."

解決策:

この問題に対処するには、pq.Array を使用して整数のスライスを 1 つの引数にカプセル化できます:

somevars := []int{1, 2, 3, 4}
rows, err = db.Query("SELECT c1,c2 FROM table"+tid+" WHERE c1 = any();", pq.Array(somevars))

pq.Array 関数は、整数のスライスを配列表現に変換し、正しく処理できるようにします。 SQLクエリによる。 pq.Array を使用すると、スライス引数を SQL クエリに簡単に組み込むことができ、エラー メッセージを解決できます。

以上がpq.Array を使用して SQL クエリの引数として整数スライスを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。