Sobes.tech
Junior — Middle

Como é que ocorre a eliminação de registros obsoletos da base de dados?

sobes.tech IA

Resposta da IA

A remoção de registos obsoletos da base de dados em Go geralmente ocorre através da execução de uma consulta SQL via o driver da base de dados. Para isso, é necessário:

  1. Estabelecer uma ligação à base de dados (por exemplo, através do pacote database/sql).
  2. Executar uma consulta DELETE com uma condição que determine os registos obsoletos (por exemplo, por data).

Exemplo de remoção de registos anteriores a uma data específica:

import (
    "database/sql"
    "log"
    "time"
    _ "github.com/lib/pq" // exemplo para 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("Registos eliminados: %d", rowsAffected)
    return nil
}

Desta forma, a eliminação ocorre através de uma consulta SQL com filtro, e o código Go é responsável por executar essa consulta e processar o resultado.