Junior — Middle
Kā mikroserviss sadarbojas ar datu bāzi datu glabāšanai un izgūšanai?
sobes.tech AI
Atbilde no AI
Microserviss Go valodā sadarbojas ar datu bāzi, izmantojot vadītājus vai ORM bibliotēkas, kas īsteno saskarni savienojuma izveidei, vaicājumu izpildei un rezultātu apstrādei.
Galvenie soļi:
- Izveidot savienojumu ar datu bāzi, izmantojot pakotni, piemēram,
database/sqlun atbilstošo vadītāju (piemēram,pqPostgreSQL gadījumā). - Izpildīt SQL vaicājumus datu ievietošanai, atjaunināšanai, dzēšanai vai izvēlei.
- Apstrādāt vaicājumu rezultātus un pārveidot tos nepieciešamajās datu struktūrās.
Piemērs savienojuma izveidei un izvēlei no 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("Kļūda, iegūstot lietotāju:", err)
} else {
log.Println("Lietotāja vārds:", name)
}
}
Tādējādi mikroserviss izmanto standarta bibliotēkas un vadītājus, lai sadarboties ar datu bāzi.