Question

J'ai d'application de base de données, je veux permettre à l'utilisateur de restaurer les enregistrements supprimés de la base de données, comme dans windows, nous avons corbeille pour les fichiers que je veux faire la même chose mais pour les enregistrements de base de données, Supposons que j'ai beaucoup de tables connexes qui ont un grand nombre de domaines.

Edit:

disons que j'ai les structures suivantes:

Tableau des rapports

  • RepName clé primaire
  • ReportData

Table des utilisateurs

  • ID de clé primaire
  • Nom

UserReports table

  • RepName clé primaire
  • L'identifiant de la clé primaire
  • IsDeleted

maintenant, si j'ai mis isdeleted champ dans UserReports table, l'utilisateur ne peut pas ajouter d'enregistrement de même encore si elle marqué comme supprimé, parce que le dossier est déjà ce qui fera la duplication.

Était-ce utile?

La solution

Note:J'utilise toujours porteuse de clé primaire.

Ajouter un timestamp 'deleted_at colonne.Lorsque l'utilisateur supprime l'entrée y mettre de l'heure actuelle.Faire de cette partie de la clé de votre contraindre.

Dans chaque requête, n'oubliez pas de rechercher uniquement les enregistrements qui contiennent la valeur null dans deleted_at champ.

Certains frameworks (comme ActiveRecord) rendre trivial à faire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top