sql >> Databasteknik >  >> RDS >> PostgreSQL

Bulkinsert från csv i postgres med golang utan att använda for loop

Du kan använda pgx bibliotek för 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. Heroku MySQL Auto Increment

  2. Fånga MySQL-varningar i Python

  3. MySql:Hur man anropar en lagrad procedur innan deklarerar uttalanden

  4. Kan jokertecken användas på tabellnamn för ett GRANT i MySQL