Heim > Artikel > Backend-Entwicklung > Gehen Sie zur Sprachpraxis: Verwenden Sie MySQL zum Speichern von Daten
Mit der rasanten Entwicklung des Internets ist die Speicherung und Verarbeitung großer Datenmengen zu einem unvermeidlichen Trend geworden. Als quelloffenes und einfach zu bedienendes Datenbanksystem wird die relationale Datenbank MySQL häufig zur Speicherung von Anwendungsdaten verwendet. In diesem Artikel wird erläutert, wie Sie mithilfe der Go-Sprache mit MySQL interagieren sowie Daten speichern und abfragen.
Umgebungseinrichtung
Zuerst müssen Sie die Go-Sprache und die MySQL-Datenbank installieren. Sie können den folgenden Befehl zum Installieren verwenden:
go get -u github.com/go-sql-driver/mysql
Datenbankverbindung
Bevor Sie MySQL verwenden, müssen Sie sicherstellen, dass der MySQL-Dienst installiert und gestartet wurde. Sie können den folgenden Befehl verwenden, um eine Verbindung herzustellen:
db, err := sql.Open("mysql", "username:password@tcp(host:port)/dbname")
wo username
和 password
分别为数据库的用户名和密码,host
和 port
分别为MySQL服务器的IP地址和端口号,dbname
ist der Name der Datenbank, mit der eine Verbindung hergestellt werden soll.
Datenbankoperation
Als Nächstes können Sie CRUD-Operationen für die Datenbank ausführen. Im Folgenden sind die häufig verwendeten MySQL-Operationsbefehle in der Go-Sprache aufgeführt:
(1) Daten abfragen
rows, err := db.Query("SELECT * FROM table_name") defer rows.Close() for rows.Next() { // 查询结果 }
(2) Daten einfügen
stmt, err := db.Prepare("INSERT INTO table_name (col1, col2) VALUES (?, ?)") _, err = stmt.Exec(val1, val2)
(3) Daten aktualisieren
stmt, err := db.Prepare("UPDATE table_name SET col1 = ? WHERE col2 = ?") _, err = stmt.Exec(val1, val2)
(4) Daten löschen
stmt, err := db.Prepare("DELETE FROM table_name WHERE col1 = ?") _, err = stmt.Exec(val)
Vollständiges Beispiel
Das Folgende ist ein vollständiges Beispiel für die Verwendung der Go-Sprache zur Interaktion mit MySQL:
package main import ( "database/sql" "fmt" _ "github.com/go-sql-driver/mysql" ) func main() { db, err := sql.Open("mysql", "username:password@tcp(host:port)/dbname") if err != nil { fmt.Println(err.Error()) return } defer db.Close() // 查询数据 rows, err := db.Query("SELECT * FROM table_name") if err != nil { fmt.Println(err.Error()) return } defer rows.Close() for rows.Next() { var id int var name string if err := rows.Scan(&id, &name); err != nil { fmt.Println(err.Error()) return } fmt.Printf("id: %d, name: %s ", id, name) } // 插入数据 stmt, err := db.Prepare("INSERT INTO table_name (id, name) VALUES (?, ?)") if err != nil { fmt.Println(err.Error()) return } defer stmt.Close() _, err = stmt.Exec(1, "test") if err != nil { fmt.Println(err.Error()) return } // 更新数据 stmt, err = db.Prepare("UPDATE table_name SET name = ? WHERE id = ?") if err != nil { fmt.Println(err.Error()) return } defer stmt.Close() _, err = stmt.Exec("updated_test", 1) if err != nil { fmt.Println(err.Error()) return } // 删除数据 stmt, err = db.Prepare("DELETE FROM table_name WHERE id = ?") if err != nil { fmt.Println(err.Error()) return } defer stmt.Close() _, err = stmt.Exec(1) if err != nil { fmt.Println(err.Error()) return } }
Das obige ist der detaillierte Inhalt vonGehen Sie zur Sprachpraxis: Verwenden Sie MySQL zum Speichern von Daten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!