Maison > développement back-end > Golang > Utiliser MySQL dans Go : un guide complet

Utiliser MySQL dans Go : un guide complet

王林
Libérer: 2023-06-17 08:57:10
original
5575 Les gens l'ont consulté

Avec l'émergence continue des applications Internet, les bases de données sont devenues un composant indispensable. En tant que l'une des bases de données relationnelles les plus populaires, MySQL a été largement utilisée en développement. En langage Go, comment utiliser MySQL pour le développement de bases de données ? Cet article donnera aux lecteurs une introduction détaillée au guide complet requis pour utiliser MySQL dans le langage Go.

1. Installez le pilote MySQL : Go-MySQL-Driver

Pour utiliser MySQL en langage Go, vous devez installer le pilote MySQL. Actuellement, le langage Go fournit officiellement un package SQL, mais il ne fournit pas de pilote MySQL, une bibliothèque tierce doit donc être utilisée. Go-MySQL-Driver est le pilote MySQL officiellement recommandé par le langage Go et constitue le meilleur choix pour utiliser MySQL dans le langage Go. L'installation est très simple, vous pouvez utiliser le code suivant pour installer :

go get -u github.com/go-sql-driver/mysql
Copier après la connexion

2. Connectez-vous à la base de données MySQL

Avant d'utiliser MySQL, vous devez d'abord vous connecter à la base de données MySQL. La connexion à une base de données MySQL nécessite l'utilisation de la chaîne de connexion de la base de données. La chaîne de connexion comprend le nom d'utilisateur, le mot de passe, l'adresse, le numéro de port, le nom de la base de données et d'autres informations.

L'exemple de code pour se connecter à la base de données MySQL est le suivant :

import (
  "database/sql"
  _ "github.com/go-sql-driver/mysql" 
)

func openDB() (*sql.DB, error) {
  db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/database")
  if err != nil {
    return nil, err
  }
  return db, nil
}
Copier après la connexion

Analyse du code :

Utilisez la méthode sql.Open() pour ouvrir la connexion MySQL. Le premier paramètre est le nom du pilote MySQL et le deuxième paramètre. est la chaîne de connexion de la base de données MySQL. Parmi eux, la chaîne de connexion contient des informations relatives au nom d'utilisateur, au mot de passe, à l'adresse et au numéro de port, et la dernière est le nom de la base de données.

3. Créer une table de données

Après la connexion à MySQL, l'étape suivante consiste à créer une table de données. Pour faire fonctionner la table, vous devez utiliser des objets de base de données. Dans le langage Go, l'objet de base de données est du type sql.DB, grâce auquel des opérations de base de données peuvent être effectuées, notamment la création, la modification et la suppression de tables de données.

L'exemple de code d'utilisation de golang pour créer une table de données est le suivant :

func create() error {
  db, err := openDB()
  if err != nil {
    return err
  }
  defer db.Close()
  _, err = db.Exec(`
    CREATE TABLE IF NOT EXISTS Users (
      id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, 
      name VARCHAR(50) NOT NULL, 
      age INT NOT NULL, 
      email VARCHAR(50) NOT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
  `)
  if err != nil {
    return err
  }
  return nil
}
Copier après la connexion

Analyse du code :

Le code se connecte d'abord à la base de données MySQL via la méthode Open(), puis exécute la commande SQL pour créer la table .() doit être écrit dans la commande MySQL.

4. Insérer des données

Après avoir créé le tableau de données, l'étape suivante consiste à insérer des données dans le tableau. L'insertion de données en langage Go nécessite l'utilisation de la méthode Exec() de l'objet base de données.

L'exemple de code pour insérer des données est le suivant :

func insert() error {
  db, err := openDB()
  if err != nil {
    return err
  }
  defer db.Close()
  _, err = db.Exec("INSERT INTO Users (name, age, email) VALUES (?, ?, ?)", "Tom", 23, "tom@example.com")
  if err != nil {
    return err
  }
  return nil
}
Copier après la connexion

Analyse du code :

Lors de l'insertion de données dans la base de données, le premier paramètre de la méthode Exec() est une commande SQL. Les valeurs des variables sont utilisées pour transmettre des paramètres aux commandes SQL. Les noms des paramètres sont représentés par des points d'interrogation (?).

5. Interroger les données

Le langage Go interroge la base de données via la fonction Query(). Le type de fonction Query() est func Query(query string, args...interface{}). Le premier paramètre est l'instruction de requête SQL et le deuxième paramètre est la valeur du paramètre requis dans l'instruction de requête SQL. Séparez les paramètres par des virgules.

L'exemple de code pour interroger les données est le suivant :

func query() error {
  db, err := openDB()
  if err != nil {
    return err
  }
  defer db.Close()
  rows, err := db.Query("SELECT id, name, age, email FROM Users")
  if err != nil {
    return err
  }
  defer rows.Close()

  for rows.Next() {
    var id, age int
    var name, email string
    if err := rows.Scan(&id, &name, &age, &email); err != nil {
      return err
    }
    fmt.Println(id, name, age, email)
  }
  return nil
}
Copier après la connexion

Analyse du code :

Utilisez la méthode Query() pour effectuer des opérations de requête et utilisez la méthode Scan() pour lire les données ligne par ligne.

6. Modifier des données

Pour modifier des données en langage Go, vous devez utiliser la méthode Exec() de l'objet base de données.

L'exemple de code pour modifier les données est le suivant :

func update() error {
  db, err := openDB()
  if err != nil {
    return err
  }
  defer db.Close()
  _, err = db.Exec("UPDATE Users SET age = ? WHERE name = ?", 25, "Tom")
  if err != nil {
    return err
  }
  return nil
}
Copier après la connexion

Analyse du code :

Utilisez la méthode Exec() pour effectuer les opérations de modification.

7. Supprimer des données

Pour supprimer des données en langage Go, vous devez utiliser la méthode Exec() de l'objet de base de données et exécuter l'instruction DELETE.

L'exemple de code pour supprimer des données est le suivant :

func delete() error {
  db, err := openDB()
  if err != nil {
    return err
  }
  defer db.Close()
  _, err = db.Exec("DELETE FROM Users WHERE name = ?", "Tom")
  if err != nil {
    return err
  }
  return nil
}
Copier après la connexion

Analyse du code :

Utilisez la méthode Exec() pour effectuer l'opération de suppression.

8. Résumé

Ce qui précède est un guide complet d'utilisation de MySQL en langage Go. À travers cet article, nous pouvons voir les meilleures pratiques pour combiner le langage Go et la base de données MySQL. L'exploitation de la base de données MySQL en langage Go est très simple et intuitive, et la compatibilité entre le langage Go et MySQL est excellente. Enfin, j'espère que cet article pourra vous aider à mieux comprendre et maîtriser les compétences d'utilisation de MySQL en langage Go.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal