Comment restaurer, rétablir des lignes supprimées dans une table ?.
Flashback s'appuie sur les segments d'annulations et le paramètre UNDO_RETENTION.
Une démonstration dans laquelle je vais supprimer 2 lignes d'une table puis récuperation de celles ci.
Valeurs initiales dans la table à 15h27.
|
SQL> SELECT soc_code, soc_raison_soc FROM societe; |
| soc_code | soc_raison_soc |
| 1 | Societe 1 |
| 2 | Societe 2 |
| 3 | Societe 3 |
| 4 | Societe 4 |
| 5 | Societe 5 |
Suppression des lignes à 15h28.
|
SQL> DELETE FROM societe where soc_code in(3,4); |
Valeurs dans la table..
|
SQL> SELECT soc_code, soc_raison_soc FROM societe; |
| soc_code | soc_raison_soc |
| 1 | Societe 1 |
| 2 | Societe 2 |
| 5 | Societe 5 |
Récupération des 2 lignes à 15h40.
INSERT INTO societe
(SELECT *
FROM societe AS OF TIMESTAMP TO_TIMESTAMP (
'18/09/2010 15:27:00',
'DD/MM/YYYY HH24:MI:SS'
)
WHERE soc_code IN (3, 4));
|
Vérification dans la table.
|
SQL> SELECT soc_code, soc_raison_soc FROM societe; |
| soc_code | soc_raison_soc |
| 1 | Societe 1 |
| 2 | Societe 2 |
| 3 | Societe 3 |
| 4 | Societe 4 |
| 5 | Societe 5 |
| Liens en rapport avec l'article et qui sont susceptibles de vous intéresser |
|
• Oracle FLASHBACK QUERY TIMESTAMP • Oracle FLASHBACK TRANSACTION QUERY • Oracle FLASHBACK Table Restauration Globale • FLASHBACK et DROP TABLE avec RECYCLEBIN |