Maison >base de données >Oracle >Comment récupérer des données supprimées dans la base de données Oracle

Comment récupérer des données supprimées dans la base de données Oracle

下次还敢
下次还敢original
2024-04-18 19:09:16755parcourir

Activez la requête Flashback, puis utilisez un objectif de point de récupération (RPO) ou une table de recherche de région Flashback pour récupérer les données supprimées : 1. Activez la requête Flashback pour spécifier la durée pendant laquelle la base de données conserve les données créées lors de la validation d'une transaction. 2. Utilisez RPO pour récupérer des données en fonction d'un moment spécifique ou utilisez une table de requête de zone de flashback pour interroger une table spéciale qui stocke l'historique des données supprimées. Comment récupérer des données supprimées dans une base de données Oracle (RPO) ou table de requête de zone flashback

Comment récupérer des données supprimées dans la base de données OracleInstructions détaillées :

1. Activer la requête flashback

Pour récupérer les données supprimées, la requête flashback doit d'abord être activée. Ceci est accompli en définissant la période de conservation appropriée dans la base de données. La période de conservation spécifie la durée pendant laquelle la base de données conserve les données créées lorsqu'une transaction est validée.

2. Utilisez le RPO ou la table de requête de zone Flashback pour récupérer des données

  1. Après avoir activé la requête Flashback, vous pouvez utiliser l'objectif de point de récupération (RPO) ou la table de requête de zone Flashback (requêtes de table Flashbacks) pour récupérer les données supprimées.
  2. Objectif de point de récupération (RPO)

RPO vous permet de récupérer des données en utilisant un moment précis. Pour utiliser RPO, vous devez savoir quand les données ont été supprimées.

<code class="sql">SELECT * FROM table_name AS OF TIMESTAMP '2023-01-01 12:00:00'</code>

Flashback Area Query Table

Flashback Area Query Table est une table spéciale dans Oracle où l'historique des données supprimées est stocké. Vous pouvez interroger ces tables pour récupérer les données supprimées.

<code class="sql">SELECT * FROM table_name@FLASHBACK_TABLE_NAME</code>

Exemple concret :

Supposons que vous ayez une table appelée « clients » qui contient des données client. La fiche client avec l'ID client 1 est supprimée. Vous pouvez utiliser la requête suivante pour restaurer les enregistrements :

<code class="sql">SELECT * FROM customers AS OF TIMESTAMP '2023-01-01 12:00:00' WHERE customer_id = 1</code>
Vous pouvez également utiliser la table de requête de zone de flashback :

<code class="sql">SELECT * FROM customers@FLASHBACK_TABLE_NAME WHERE customer_id = 1</code>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn