Recuperare record cancellato

di il
3 risposte

Recuperare record cancellato

Buongiorno,
ho un enorme problema e spero qualcuno riesca ad aiutarmi.
Ho inavvertitamente cancellato un record da una tabella. Ora, ho scoperto che tramite il transaction log file è possibile recuperare tale record. E' vero? Come si deve procedere?
La versione di SQL server in uso è la 2005. L'unico strumento che ho a disposizione è il management studio.
Purtroppo conosco molto poco questo argomento, sto cercando di imparare, ma non ho nessun collega disponibile a darmi un aiuto. Confido in qualcuno di voi.
Grazie.

3 Risposte

  • Re: Recuperare record cancellato

    Il transaction log serve per la gestione delle transazioni.

    Una transazione viene aperta, quindi chiusa con commit (tutte le modifiche vengono fissate), o rollback (le modifiche vengono abortite).

    Ma, una volta chiusa il danno e' fatto! E non la puoi tenere aperta all'infinito!

    Ora, se hai cancellato il record, te lo sei perso. L'unica soluzione e' reinserirlo di nuovo con una INSERT (ma devi conoscere i valori di tutti i campi)
  • Re: Recuperare record cancellato

    Se, come si dovrebbe, hai pianificato un piano di manutenzione dei backup, ti basta accedere all'ultimo backup.

    Se non hai pianificato nulla, beh, addio record...
    In tal caso sbrigati a pianificare il backup del database (da SSMS):
    1 - esecuzione del backup ogni giorno (sia db che log)
    2 - esecuzione ogni settimana pianifichi la ricostruzione degli indici
    3 - eliminazione dei backup dopo x giorni (7, 10, 15, ... decidi tu)
    4 - assicurati che il disco di backup abbia spazio sufficiente (ogni tanto è meglio controllare)

    P.S. Ti consiglio di impostare nel database, Modello di recupero = Con registrazione minima
  • Re: Recuperare record cancellato

    Vi ringrazio per le risposte e i consigli.
    Essendo un record solo è stato più semplice e veloce effettuare una INSERT.

    Sicuramente questo "incidente", mi ha insegnato a fare più attenzione alle operazioni che eseguo. Purtroppo ho eredito la gestione del DB da un mio collega e, a parte qualche comando base (insert e select), conosco ben poco di SQL Server.

    Grazie Ancora!!!
Devi accedere o registrarti per scrivere nel forum
3 risposte