Golang : PGX CopyFrom向Postgres数据库插入行

441 阅读1分钟

下面是一个如何使用PGX的CopyFrom函数向Postgres数据库插入行的例子。HScodes表是供我自己参考的,你需要用你自己的表和结构代替它。

 type HScodes struct {
  Sid int `json:"sid" db:"sid"`
  HScode  string `json:"name" db:"hscode"`
  Keyword string `json:"value" db:"keyword"`
 }

 var dataToInsert []models.HScodes

 rowsToInsert := [][]interface{}{}

 for i := 0; i < len(dataToInsert); i++ {
  row := []interface{}{dataToInsert[i].HScode, dataToInsert[i].Keyword}
  rowsToInsert = append(rowsToInsert, row)
 }

 copyCount, err := database.WrapCopyFrom(ctx, pgx.Identifier{"hscodes"},
  []string{"hscode", "keyword"},
  pgx.CopyFromRows(rowsToInsert))

编码愉快!

参考资料:

github.com/jackc/pgx/i…

如果你获得了一些知识或者这里的信息解决了你的编程问题。请考虑捐赠给不幸的人或一些你喜欢的慈善机构。除了捐赠之外,植树、志愿服务或减少你的碳足迹也会很好。