Rumah > pembangunan bahagian belakang > Golang > Bagaimanakah Saya Boleh Menggunakan pq.Array untuk Melepasi Slices Integer sebagai Argumen dalam Pertanyaan SQL?

Bagaimanakah Saya Boleh Menggunakan pq.Array untuk Melepasi Slices Integer sebagai Argumen dalam Pertanyaan SQL?

Barbara Streisand
Lepaskan: 2024-12-10 02:11:08
asal
235 orang telah melayarinya

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

Menggabungkan Slice Arguments ke dalam SQL Query dengan pq.Array

Apabila cuba melaksanakan pertanyaan SQL yang termasuk sepotong integer sebagai argumen, pengguna mungkin menghadapi ralat: "sql: converting argument $1 type: unsupported type []int, a slice daripada int." Untuk mengatasi masalah ini, fungsi pq.Array boleh digunakan.

Masalah:

Pertimbangkan kod berikut:

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

Melaksanakan ini pertanyaan menghasilkan ralat: "sql: converting argument $1 type: unsupported type []int, a slice of int."

Penyelesaian:

Untuk menangani masalah ini, pq.Array boleh digunakan untuk merangkum kepingan integer ke dalam satu hujah:

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

Fungsi pq.Array menukar kepingan integer menjadi perwakilan tatasusunan, membolehkannya dikendalikan dengan betul oleh pertanyaan SQL. Dengan menggunakan pq.Array, hujah keratan boleh digabungkan dengan mudah ke dalam pertanyaan SQL, menyelesaikan mesej ralat.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menggunakan pq.Array untuk Melepasi Slices Integer sebagai Argumen dalam Pertanyaan SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan