In diesem Szenario haben Sie eine CSV-Datei mit Daten, die Sie massenhaft in eine PostgreSQL-Tabelle einfügen möchten unter Verwendung von Go und dem GORM ORM, ohne for-Schleifen oder SQL-Rohabfragen zu verwenden.
Die pgx-Bibliothek kann für diese Aufgabe verwendet werden, wie im folgenden Codeausschnitt gezeigt:
<code class="go">package main import ( "context" "database/sql" "fmt" "os" "github.com/jackc/pgx/v4/pgxpool" ) func main() { filename := "foo.csv" dbconn, err := pgxpool.Connect(context.Background(), os.Getenv("DATABASE_URL")) if err != nil { panic(err) } defer dbconn.Close() 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()) }</code>
In dieser Code:
Das obige ist der detaillierte Inhalt vonWie fügt man CSV-Daten massenhaft in PostgreSQL ein, indem man Go, GORM und die pgx-Bibliothek ohne Schleifen verwendet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!