Heim > Datenbank > MySQL-Tutorial > So fragen Sie MySQL-Daten in der Go-Sprache ab

So fragen Sie MySQL-Daten in der Go-Sprache ab

PHPz
Freigeben: 2023-06-03 08:22:24
nach vorne
1151 Leute haben es durchsucht

Um den MySQL-Treiber verwenden zu können, müssen wir ihn über den folgenden Befehl in unserem Go-Projekt installieren:

go get github.com/go-sql-driver/mysql
Nach dem Login kopieren

Nachdem die Installation abgeschlossen ist, müssen wir ihn in das Golang-Projekt importieren:

import "github.com/go-sql-driver/mysql"
Nach dem Login kopieren

Als nächstes müssen wir Sie müssen eine MySQL-Datenbankverbindung einrichten. Hier ist der Beispielcode, der eine Verbindung zu einer Datenbank namens „mydatabase“ herstellt:

db, err := sql.Open("mysql", "user:password@tcp(localhost:3306)/mydatabase")
if err != nil {
    log.Fatal(err)
}
defer db.Close()
Nach dem Login kopieren

Beachten Sie, dass wir in der Verbindungszeichenfolge den Port des MySQL-Servers angeben, der standardmäßig 3306 ist.

Nachdem wir erfolgreich eine Verbindung mit der MySQL-Datenbank hergestellt haben, können wir mit der Datenabfrage beginnen. Unten ist ein einfaches Beispiel, das die Datensätze aller Benutzer in der Tabelle mit dem Namen „users“ abruft

rows, err := db.Query("SELECT * FROM users")
if err != nil {
    log.Fatal(err)
}
defer rows.Close()

for rows.Next() {
    var id int
    var name string
    var email string
    err = rows.Scan(&id, &name, &email)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(id, name, email)
}

err = rows.Err()
if err != nil {
    log.Fatal(err)
}
Nach dem Login kopieren

Wir haben die db.Query-Funktion übernommen, um die SQL-Abfrage auszuführen, wie im obigen Beispiel gezeigt. Diese Funktion gibt ein Rows-Objekt zurück, das alle Zeilen der Abfrageergebnisse enthält.

Als nächstes verwenden wir eine for-Schleife, um alle Zeilen zu durchlaufen, und verwenden die rows.Scan-Funktion, um die Spaltenwerte Zeile für Zeile zu lesen. Abschließend überprüfen wir alle Abfrageergebnisse auf Fehler.

Natürlich können wir auch parametrisierte Abfragen verwenden, um Daten sicherer abzufragen. Parametrisierte Abfragen verhindern SQL-Injection-Angriffe. Hier ist ein Beispielcodeausschnitt, der eine parametrisierte Abfrage verwendet, um Benutzerdatensätze mit dem Namen „john“ abzurufen:

rows, err := db.Query("SELECT * FROM users WHERE name = ?", "john")
if err != nil {
    log.Fatal(err)
}
defer rows.Close()

for rows.Next() {
    var id int
    var name string
    var email string
    err = rows.Scan(&id, &name, &email)
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(id, name, email)
}

err = rows.Err()
if err != nil {
    log.Fatal(err)
}
Nach dem Login kopieren

Im obigen Beispiel haben wir den Platzhalter „?“ in der Abfragezeichenfolge und in den Parametern der Abfragefunktion verwendet das Sie abgleichen möchten, wird übergeben.

Das obige ist der detaillierte Inhalt vonSo fragen Sie MySQL-Daten in der Go-Sprache ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Aktuelle Ausgaben
So ändern Sie MySQL in MySQL
Aus 1970-01-01 08:00:00
0
0
0
MySQL-Startfehler unter Centos
Aus 1970-01-01 08:00:00
0
0
0
MySQL stoppt den Prozess
Aus 1970-01-01 08:00:00
0
0
0
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage