首頁  >  文章  >  後端開發  >  如何修復 GORM 批量插入中的列數不符?

如何修復 GORM 批量插入中的列數不符?

DDD
DDD原創
2024-11-23 05:22:15945瀏覽

How to Fix Column Count Mismatches in GORM Bulk Inserts?

使用GORM 解決批量插入中的列數不匹配

在使用GORM 的批量插入查詢中,您遇到了由於不匹配而導致的錯誤列數。出現此錯誤的原因是您嘗試將介面陣列作為單一參數傳遞,這會導致無效查詢。

要解決此問題,您需要使用可變參數語法 (...)。此語法允許您將切片的元素單獨傳遞給函數,而不是傳遞切片本身。對於批次插入查詢,您可以如下使用它:

tx.Exec(sqlStr, vals...)

透過新增 ...,您可以通知編譯器您打算單獨傳遞 vals 的每個元素。這會產生所需的查詢字串:

INSERT INTO city(code, name) VALUES ('XX1', 'Jakarta'),('XX2', 'Bandung')

其他注意事項:

  • 請記住檢查Tx.Exec() 傳回的錯誤並且相應地處理它們.
  • 確保vals 中的元素數量與查詢中的佔位符(?) 數量匹配字串。

以上是如何修復 GORM 批量插入中的列數不符?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn