Méthode recommandée pour se connecter à MySQL depuis Go : drivers, pools de connexions et best practices
Bonjour à tous ! Je suis un développeur Go débutant, je viens de Python où tout était simple avec SQLAlchemy. Actuellement, j'écris une petite API REST en Go (net/http pur) et j'ai besoin de me connecter à MySQL.
J'ai lu plusieurs tutoriels, mais ils se contredisent. Certains utilisent go-sql-driver/mysql, d'autres database/sql directement, et certains recommandent un ORM comme GORM. Je suis complètement perdu.
Voici un exemple de mon code actuel que j'ai bricolé, mais il a l'air fait à la va-vite :
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func main() {
db, err := sql.Open("mysql", "user:password@tcp(127.0.0.1:3306)/dbname")
if err != nil {
panic(err.Error())
}
defer db.Close()
// Ici je ne comprends pas : faut-il appeler db.Ping() ?
// Faut-il configurer le pool de connexions ?
// Comment gérer les erreurs correctement ?
rows, err := db.Query("SELECT id, name FROM users")
if err != nil {