Junior — Middle
Comment le microservice interagit-il avec la base de données pour stocker et récupérer des données?
sobes.tech IA
Réponse de l'IA
Un microservice en Go interagit avec la base de données via des pilotes ou des bibliothèques ORM qui implémentent une interface pour se connecter, exécuter des requêtes et traiter les résultats.
Étapes principales:
- Établir une connexion à la base de données à l'aide d'un paquet, par exemple,
database/sqlet le pilote correspondant (par exemple,pqpour PostgreSQL). - Exécuter des requêtes SQL pour insérer, mettre à jour, supprimer ou sélectionner des données.
- Traiter les résultats des requêtes et les convertir en structures de données nécessaires.
Exemple de connexion et de requête dans PostgreSQL:
import (
"database/sql"
_ "github.com/lib/pq"
"log"
)
func getUserByID(db *sql.DB, id int) (string, error) {
var name string
err := db.QueryRow("SELECT name FROM users WHERE id = $1", id).Scan(&name)
if err != nil {
return "", err
}
return name, nil
}
func main() {
connStr := "user=username dbname=mydb sslmode=disable"
db, err := sql.Open("postgres", connStr)
if err != nil {
log.Fatal(err)
}
defer db.Close()
name, err := getUserByID(db, 1)
if err != nil {
log.Println("Error fetching user:", err)
} else {
log.Println("User name:", name)
}
}
Ainsi, le microservice utilise des bibliothèques et pilotes standard pour interagir avec la base de données.