Lors de la tentative d'insertion groupée dans une base de données PostgreSQL à l'aide de Go et de la bibliothèque pgx, un message d'erreur "attendu 10 des arguments, got 1" peuvent être rencontrés. Ce problème est dû à des incohérences dans la construction de l'instruction SQL.
Pour résoudre ce problème, il est recommandé d'utiliser la méthode pgx.Conn.CopyFrom au lieu de créer manuellement l'instruction SQL. CopyFrom utilise le protocole de copie PostgreSQL pour une insertion de données en masse efficace.
<code class="go">rows := [][]interface{}{ {"abc", 10}, {"dns", 11}, {"qwe", 12}, {"dss", 13}, {"xcmk", 14}, } copyCount, err := conn.CopyFrom( pgx.Identifier{"keys"}, []string{"keyval", "lastval"}, pgx.CopyFromRows(rows), )</code>
En employant cette approche, pgx gérera automatiquement la génération et l'exécution des instructions SQL, garantissant une insertion en masse efficace et fiable.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!