In Datenbankzugriffsszenarien mit strukturierten Daten ist es oft wünschenswert, Datenbankzeilendaten in eine entsprechende Struktur zu konvertieren. Betrachten Sie die folgende Benutzerstruktur:
type User struct { Name string Id int Score int }
Angenommen, eine Datenbanktabelle mit demselben Schema, wie können wir eine Datenbankzeile effizient direkt in eine Benutzerstruktur analysieren?
Das Go-Datenbank/SQL-Paket bietet hilfreiche Beispiele, wie das Folgende zeigt Tests:
func TestQuery(t *testing.T) { type row struct { age int name string } rows, err := db.Query("SELECT|people|age,name|") got := []row{} for rows.Next() { var r row err = rows.Scan(&r.age, &r.name) got = append(got, r) } } func TestQueryRow(t *testing.T) { var row struct { age int name string } err = db.QueryRow("SELECT|people|age,name|age=?", 3).Scan(&row.age, &row.name) }
Wenn Sie diese Prinzipien auf Ihren speziellen Fall anwenden, können Sie eine Zeile wie folgt in eine Benutzerstruktur umwandeln:
var row struct { age int name string } err = db.QueryRow("SELECT|people|age,name|age=?", 3).Scan(&row.age, &row.name)
Das obige ist der detaillierte Inhalt vonWie konvertiert man Datenbankzeilen in Go effizient in Strukturen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!