IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Annulation en différé d'une série de mises à jour


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 140
    Points : 89
    Points
    89
    Par défaut Annulation en différé d'une série de mises à jour
    Bonjour,
    J'ai des écrans de saisie qui vont écrire dans un dizaine de tables.
    Je voudrai donner la possibilité à l'utilisateur d'annuler l'ensemble des modifications effectués sur son écran, mais cela même après que les données aient été transférés dans les tables.

    Existe il la possibilité de créer une sorte de 'point de retour' pour revenir a l'état antérieur des données ?

    L'annulation peut avoir lieu plusieurs (longues) minutes après, donc l'utilisation de transaction ne semble pas adaptée, car cela paralyse trop la base.

    En fait cela ressemble a 'rejouer le journal à l'envers', mais uniquement pour les données écrites par un utilisateur (ou une connexion) donné

    Merci pour vos idées

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    L'annulation peut avoir lieu plusieurs (longues) minutes après, donc l'utilisation de transaction ne semble pas adaptée, car cela paralyse trop la base.
    C'est tout à fait exact.

    En fait cela ressemble a 'rejouer le journal à l'envers', mais uniquement pour les données écrites par un utilisateur (ou une connexion) donné
    C'est possible mais horriblement lourd à implémenter, et pas souple du tout.

    Le mieux me semble de stocker un identifiant de l'utilisateur avec l'heure de modification ...

    @++

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 140
    Points : 89
    Points
    89
    Par défaut
    Merci elsuket

    Mais j'ai pas compris.

    Citation Envoyé par elsuket Voir le message
    Le mieux me semble de stocker un identifiant de l'utilisateur avec l'heure de modification ...
    @++
    Je ne cherche pas simplement a savoir qui a fait la dernière modif, mais bien à revenir a l'état antérieur a cette modif.

    Peut-être que je n'ai pas bien exprimé mon problème :

    L'utilisateur saisi des données dans plusieurs tables, avec trois niveaux d'arborescences
    (style : coordonnées client / liste des commandes / liste des lignes de commandes, pour faire simple)
    Il peut saisir plusieurs commandes à la suites, avec chacune leurs lignes de détail, ainsi que modifier ou supprimer des commandes et/ou des lignes de commandes existantes, puis décider de rétablir sa fiche telle qu'elle se trouvait avant de commencer sa série de modification.

    Maintenir une sauvegarde des données avant modification dans une arborescence parallèle temporaire me semble bien lourd...

    Et peut-être une Transaction 'légère', par exemple qui permettrai aux autres utilisateurs de lire les données encore dans la transaction (si cela existe...), ne chargerai pas trop la base ?

    Même une solution un peu 'Bricolage' me convient, pourvu qu'elle ne soit pas trop lourde à implémenter.

  4. #4
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Désolé c'est moi qui ai mal compris

    Pourquoi ne pas écrire un trigger pour historiser vos données ?

    @++

Discussions similaires

  1. Réponses: 6
    Dernier message: 28/11/2013, 11h55
  2. Windows Azure : Microsoft effectue une série de mises à jour
    Par Stéphane le calme dans le forum Microsoft Azure
    Réponses: 2
    Dernier message: 25/10/2013, 18h10
  3. Réponses: 2
    Dernier message: 10/03/2006, 13h55
  4. Réponses: 6
    Dernier message: 29/11/2005, 19h36
  5. Optimisation d'une recherche et mise à jour
    Par gandf dans le forum C++Builder
    Réponses: 4
    Dernier message: 07/01/2005, 18h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo