Sobes.tech
Junior — Middle

Ma'lumotlar bazasidan eskirgan yozuvlar qanday o'chiriladi?

sobes.tech AI

AIdan javob

Go'da eski yozuvlarni ma'lumotlar bazasidan o'chirish odatda ma'lumotlar bazasi drayveri orqali SQL so'rovini bajarish bilan amalga oshiriladi. Buning uchun:

  1. Ma'lumotlar bazasiga ulanishni o'rnatish (masalan, database/sql paketidan foydalanib).
  2. Eski yozuvlarni aniqlovchi shart bilan DELETE so'rovini bajarish (masalan, sana bo'yicha).

Ma'lum bir sanadan oldingi yozuvlarni o'chirish misoli:

import (
    "database/sql"
    "log"
    "time"
    _ "github.com/lib/pq" // PostgreSQL uchun misol
)

func deleteOldRecords(db *sql.DB, cutoff time.Time) error {
    query := `DELETE FROM records WHERE created_at < $1`
    result, err := db.Exec(query, cutoff)
    if err != nil {
        return err
    }
    rowsAffected, _ := result.RowsAffected()
    log.Printf("O'chirilgan yozuvlar: %d", rowsAffected)
    return nil
}

Shu tarzda, o'chirish SQL so'rovi bilan filtrlangan holda amalga oshiriladi va Go kodi bu so'rovni bajarish va natijani qayta ishlash uchun javobgardir.