sql >> Database teknologi >  >> RDS >> PostgreSQL

Masseindlæg fra csv i postgres ved hjælp af golang uden brug af for loop

Du kan bruge pgx bibliotek til det:

    filename := "foo.csv"
    dbconn, err := pgx.Connect(context.Background(), os.Getenv("DATABASE_URL"))
    if err != nil {
        panic(err)
    }
    defer dbconn.Release()
    f, err := os.Open(filename)
    if err != nil {
        panic(err)
    }
    defer func() { _ = f.Close() }()
    res, err := dbconn.Conn().PgConn().CopyFrom(context.Background(), f, "COPY csv_test FROM STDIN (FORMAT csv)")
    if err != nil {
        panic(err)
    }
    fmt.Print(res.RowsAffected())


  1. indsamle årlige aggregerede data for senere hurtig adgang

  2. Hvordan specificerer man den aktuelle arbejdsdatabase for initialiseringsscriptet for en postgres docker container?

  3. Importerer MaxMinds GeoLite2 til MySQL

  4. Vælg den første række for hver gruppe i MySQL?