Sobes.tech
Junior — Middle

Ինչպես է հնացած գրառումները հեռացվում տվյալների բազայից?

sobes.tech AI

Պատասխան AI-ից

Go-ում հին գրառումները տվյալների բազայից ջնջելը սովորաբար կատարվում է տվյալների բազայի վարորդի միջոցով SQL հարցում կատարելով: Դրա համար անհրաժեշտ է՝

  1. կապ հաստատել տվյալների բազայի հետ (օրինակ, database/sql փաթեթի միջոցով):
  2. կատարել DELETE հարցում՝ հին գրառումները որոշող պայմանով (օրինակ՝ ամսաթվով):

Նմուշ՝ որոշակի ամսաթվից առաջ գտնվող գրառումները ջնջելու:

import (
    "database/sql"
    "log"
    "time"
    _ "github.com/lib/pq" // PostgreSQL-ի համար օրինակ
)

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("Ջնջված գրառումներ: %d", rowsAffected)
    return nil
}

Այսպիսով, ջնջումը կատարվում է SQL հարցումով՝ ֆիլտրով, իսկ Go կոդը պատասխանատու է այդ հարցումը կատարելու և արդյունքը մշակելու համար։