Junior — Middle
Mikroxidmət məlumatların saxlanması və çıxarılması üçün verilənlər bazası ilə necə qarşılıqlı əlaqədədir?
sobes.tech Süni İntellekt
AI-dan cavab
Go dilində mikroxidmət verilənlər bazası ilə əlaqə qurmaq üçün sürücülər və ya ORM kitabxanalarından istifadə edir, bunlar əlaqə qurmaq, sorğuları icra etmək və nəticələri işləmək üçün interfeys təmin edir.
Əsas addımlar:
database/sqlkimi paket və müvafiq sürücü (məsələn, PostgreSQL üçünpq) istifadə edərək verilənlər bazası ilə əlaqə qurmaq.- SQL sorğuları icra etmək, məlumat əlavə etmək, yeniləmək, silmək və ya seçmək.
- Sorğu nəticələrini işləmək və lazım olan məlumat strukturlarına çevirmək.
PostgreSQL-ə qoşulma və nümunə sorğu:
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("İstifadəçini almaqda xəta:", err)
} else {
log.Println("İstifadəçi adı:", name)
}
}
Bu şəkildə, mikroxidmət verilənlər bazası ilə əlaqə qurmaq üçün standart kitabxanalar və sürücülərdən istifadə edir.