Problem:
Wie kann man in Go mehrere ausführen? SQL-Anweisungen in einer einzelnen Datenbankoperation unter Verwendung der Datenbank/SQL Paket?
Lösung:
Das Datenbank-/SQL-Paket bietet eine vielseitige Exec()-Funktion, die das Stapeln von SQL-Anweisungen ermöglicht. So können Sie es implementieren:
func BulkInsert(unsavedRows []*ExampleRowStruct) error { valueStrings := make([]string, 0, len(unsavedRows)) valueArgs := make([]interface{}, 0, len(unsavedRows)*3) for _, post := range unsavedRows { valueStrings = append(valueStrings, "(?, ?, ?)") valueArgs = append(valueArgs, post.Column1) valueArgs = append(valueArgs, post.Column2) valueArgs = append(valueArgs, post.Column3) } stmt := fmt.Sprintf("INSERT INTO my_sample_table (column1, column2, column3) VALUES %s", strings.Join(valueStrings, ",")) _, err := db.Exec(stmt, valueArgs...) return err }
Vorteile:
Das obige ist der detaillierte Inhalt vonWie führe ich Batch-SQL-Anweisungen in Go mit „database/sql' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!