Maison > développement back-end > Golang > Quelle est la meilleure façon de se connecter à MySQL depuis Go en utilisant l'API « database/sql » ?

Quelle est la meilleure façon de se connecter à MySQL depuis Go en utilisant l'API « database/sql » ?

DDD
Libérer: 2024-12-24 01:30:15
original
638 Les gens l'ont consulté

What's the Best Way to Connect to MySQL from Go Using the `database/sql` API?

La meilleure façon de se connecter à MySQL depuis Go

Connexion MySQL fiable dans Go

La connexion à MySQL depuis Go est facilitée grâce au pilote approprié . Parmi les options disponibles, celles qui adhèrent à l'API base de données/sql sont recommandées pour leur :

  • Syntaxe propre et efficace
  • Compatibilité entre plusieurs pilotes sans modification de code (sauf importation et connexion )

Meilleurs pilotes MySQL pour Go

Deux pilotes rapides et fiables se démarquent pour MySQL connexion :

  • MyMySQL
  • Go-MySQL-Driver

L'expérience testée en production confirme leur stabilité et leurs performances.

Déclarations d'importation pour les Pilotes

  • MyMySQL : importer (_ "github.com/ziutek/mymysql/godrv")
  • Go-MySQL-Driver : importer (_ "github.com/go-sql-driver/mysql")

Connexion et Fermeture

  • MyMySQL :

    con, err := sql.Open("mymysql", database+"/"+user+"/"+password)
    defer con.Close()
    Copier après la connexion
  • Go-MySQL-Driver :

    con, err := sql.Open("mysql", store.user+":"+store.password+"@/"+store.database)
    defer con.Close()
    Copier après la connexion

Exemples de requêtes

  • Sélectionnez un une seule ligne :

    row := con.QueryRow("select mdpr, x, y, z from sometable where>
    Copier après la connexion
  • Sélectionner plusieurs lignes :

    rows, err := con.Query("select a, b from item where p1=? and p2=?", p1, p2)
    if err != nil { /* error handling */}
    items := make([]*SomeStruct, 0, 10)
    var ida, idb uint
    for rows.Next() {
      err = rows.Scan(&ida, &idb)
      if err != nil { /* error handling */}
      items = append(items, &SomeStruct{ida, idb})
    }
    Copier après la connexion
  • Opération d'insertion :

    _, err = con.Exec("insert into tbl (id, mdpr, isok) values (?, ?, 1)", id, mdpr)
    Copier après la connexion

Avantages de l'API Database/sql

Utilisation de la base de données/sql L'API dans Go pour la connectivité MySQL offre plusieurs avantages :

  • Syntaxe simplifiée : l'API fournit une interface cohérente entre différentes bases de données.
  • Interchangeabilité des pilotes : La commutation entre les pilotes MySQL devient facile, ne nécessitant que des modifications d'importation et de ligne de connexion.

Avec des pilotes fiables et un API puissante, la connexion à MySQL dans Go est une expérience transparente.

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!

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