Bagaimana untuk Membetulkan Ketakpadanan Kiraan Lajur dalam Sisipan Pukal GORM?

DDD
Lepaskan: 2024-11-23 05:22:15
asal
942 orang telah melayarinya

How to Fix Column Count Mismatches in GORM Bulk Inserts?

Menyelesaikan Ketakpadanan Kiraan Lajur dalam Sisipan Pukal dengan GORM

Dalam pertanyaan sisipan pukal anda menggunakan GORM, anda mengalami ralat disebabkan oleh ketidakpadanan dalam kiraan lajur. Ralat ini berlaku kerana anda cuba menghantar tatasusunan antara muka sebagai argumen tunggal, yang mengakibatkan pertanyaan tidak sah.

Untuk menyelesaikan isu ini, anda perlu menggunakan sintaks parameter variadic (...). Sintaks ini membolehkan anda menghantar elemen hirisan secara individu kepada fungsi, dan bukannya menghantar hirisan itu sendiri. Dalam kes pertanyaan sisipan pukal anda, anda boleh menggunakannya seperti berikut:

tx.Exec(sqlStr, vals...)
Salin selepas log masuk

Dengan menambahkan ..., anda memaklumkan pengkompil bahawa anda berhasrat untuk menghantar setiap elemen val secara individu. Ini menjana rentetan pertanyaan yang diingini:

INSERT INTO city(code, name) VALUES ('XX1', 'Jakarta'),('XX2', 'Bandung')
Salin selepas log masuk

Pertimbangan Tambahan:

  • Ingat untuk menyemak ralat yang dikembalikan oleh Tx.Exec() dan mengendalikannya dengan sewajarnya .
  • Pastikan bilangan elemen dalam val sepadan dengan bilangan ruang letak (?) dalam rentetan pertanyaan anda.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ketakpadanan Kiraan Lajur dalam Sisipan Pukal GORM?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan