Protocole préféré pour la connexion à MySQL depuis Go
Lorsque vous recherchez une méthode fiable pour établir des connexions avec des bases de données MySQL depuis Go, de nombreuses bibliothèques apparaissent comme solutions potentielles. Cependant, évaluer la maturité et la maintenance continue de ces bibliothèques reste un défi. Pour ceux qui recherchent une approche simple et largement adoptée, les recommandations suivantes sont fournies.
Bibliothèques recommandées implémentant l'API base de données/sql
L'API base de données/sql sert de interface préférée pour travailler avec des bases de données SQL dans Go. Cette API fournit :
Deux pilotes rapides et fiables implémentant cette API sont :
Il a été prouvé que ces pilotes gèrent de manière fiable des connexions à volume élevé, offrant des performances constantes dans les environnements de production. .
Exemple d'utilisation avec MyMySQL
import ( "database/sql" _ "github.com/ziutek/mymysql/godrv" ) func main() { // Username, password, and database details are placeholders db, err := sql.Open("mymysql", "database/user/password") if err != nil { // Handle error } // Perform database operations db.Close() }
Exemple d'utilisation avec Go-MySQL-Driver
import ( "database/sql" _ "github.com/go-sql-driver/mysql" ) func main() { // Username, password, and database details are placeholders db, err := sql.Open("mysql", "user:password@/database") if err != nil { // Handle error } // Perform database operations db.Close() }
Opérations de base de données
Les opérations suivantes illustrent l'utilisation de MySQL dans Go :
var cb SomeThing err := con.QueryRow("select ...").Scan(&cb.Mdpr, &cb.X, &cb.Y, &cb.Z)
var items []*SomeStruct for rows.Next() { err = rows.Scan(&ida, &idb) items = append(items, &SomeStruct{ida, idb}) }
_, err = con.Exec("insert into ...")
L'intégration MySQL dans Go est très efficace et fiable, offrant un fonctionnement stable pendant des périodes prolongées. La flexibilité de l'API base de données/sql permet un changement de pilote transparent sans perturber la logique de l'application.
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!