Maison  >  Article  >  développement back-end  >  Comment se connecter à la base de données dans Golang ?

Comment se connecter à la base de données dans Golang ?

PHPz
PHPzoriginal
2023-04-25 15:11:452358parcourir

Dans le développement d'applications modernes, interagir avec la base de données est une tâche très importante car la plupart des données de l'application sont stockées dans la base de données. Dans le développement de Golang, la connexion à la base de données est également une tâche essentielle. Cet article explique comment utiliser Golang pour se connecter à la base de données.

  1. Installer le pilote de base de données

La connexion à la base de données dans Golang nécessite l'utilisation du pilote de base de données correspondant. Par conséquent, avant de commencer, nous devons installer le pilote correspondant. Golang peut se connecter à de nombreux types de bases de données, telles que MySQL, PostgreSQL, SQL Server, Oracle, etc. Chaque base de données nécessite un pilote différent.

Nous prendrons MySQL comme exemple pour expliquer comment se connecter à la base de données. Avant de nous connecter à MySQL, nous devons installer le pilote mysql. Vous pouvez utiliser la commande suivante pour l'installer :

go get -u github.com/go-sql-driver/mysql

Bien entendu, vous devez également importer la bibliothèque correspondante dans le code.

import (
  "database/sql"
  _ "github.com/go-sql-driver/mysql"
)
  1. Connexion à MySQL

La connexion à MySQL nécessite les informations de base suivantes :

  • Nom de la base de données
  • Nom d'hôte/adresse IP
  • Numéro de port
  • Nom d'utilisateur
  • Mot de passe

Dans Golang, vous pouvez utiliser le code suivant Connectez-vous à MySQL :

func Connect() (*sql.DB, error){

  //设置数据库连接信息
  db, err := sql.Open("mysql", "USER_NAME:PASSWORD@tcp(HOST:PORT)/DB_NAME")

  //测试连接
  err = db.Ping()
  if err != nil {
    return nil, err
  }

  return db, nil
}

Dans cet extrait de code, nous utilisons la fonction sql.Open() pour ouvrir une connexion à la base de données et spécifier les informations de connexion à la base de données en passant des paramètres. Dans ce cas, HOST est l'adresse IP ou le nom d'hôte de la base de données, PORT est le numéro de port pour MySQL, DB_NAME est le nom de la base de données à laquelle se connecter, et USER_NAME et PASSWORD sont le nom d'utilisateur et le mot de passe de la base de données. Si la connexion réussit, un pointeur vers l'instance de base de données est renvoyé. sql.Open()函数打开一个数据库连接,并且通过传递的参数来指定数据库的连接信息。在这种情况下,HOST是数据库主机的IP地址或主机名,PORT是MySQL的端口号,DB_NAME是要连接的数据库的名称,USER_NAME和PASSWORD是数据库的用户名和密码。如果连接成功,则返回一个指向数据库实例的指针。

  1. 执行查询

连接数据库之后,我们可以执行各种查询和操作。Golang中可以使用Prepare()Exec()Query()函数执行SQL查询。

例如,下面的代码段可以执行一个Insert查询:

func AddProduct(name string, price int) error {

  //连接到数据库
  db, err := Connect()
  if err != nil {
    return err
  }
  defer db.Close()

  //准备SQL语句
  stmt, err := db.Prepare("INSERT INTO products(name, price) VALUES(?,?)")
  if err != nil {
    return err
  }
  defer stmt.Close()

  //执行查询
  _, err = stmt.Exec(name, price)
  if err != nil {
    return err
  }

  return nil
}

在这段代码中,我们使用Prepare()函数准备一个SQL语句,然后使用Exec()函数执行查询。Exec()函数返回行数和错误信息。如果错误为空,则插入语句成功。

类似的,我们可以使用Query()Scan()

    Exécuter des requêtes
    1. Après la connexion à la base de données, nous pouvons effectuer diverses requêtes et opérations. Dans Golang, vous pouvez utiliser les fonctions Prepare() et Exec() ou Query() pour exécuter des requêtes SQL.

    Par exemple, l'extrait de code suivant peut exécuter une requête d'insertion :

    rrreee🎜Dans ce code, nous utilisons la fonction Prepare() pour préparer une instruction SQL, puis utilisons Exec( )La fonction exécute la requête. La fonction <code>Exec() renvoie le nombre de lignes et les informations d'erreur. Si l'erreur est vide, l'instruction insert réussit. 🎜🎜De même, nous pouvons utiliser les fonctions Query() et Scan() pour exécuter des requêtes Select et obtenir des ensembles de résultats de requête. 🎜🎜🎜Conclusion🎜🎜🎜Dans cet article, nous avons appris comment se connecter à la base de données MySQL à l'aide de Golang. La connexion à la base de données nécessite l'installation du pilote correspondant et la spécification des informations de connexion. Une fois la connexion établie, nous pouvons effectuer diverses requêtes et opérations SQL, notamment Insérer, Mettre à jour, Supprimer et Sélectionner. Je vous souhaite du succès. 🎜

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!

Déclaration:
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