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

MS SQL Server Discussion :

sq-server, exercice, transaction, commit


Sujet :

MS SQL Server

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2013
    Messages : 35
    Points : 23
    Points
    23
    Par défaut sq-server, exercice, transaction, commit
    Bonsoir


    Voici l'exercice

    Afficher le contenu de toute la table
    Définir un point intermédiaire de transaction
    Vider entièrement la table
    Confirmer que la table est vide
    Annuler la dernière opération DELETE
    Confirmer que toutes les lignes existent
    Rendre les changements permanents

    ma réponse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    begin transaction
    select * from emp
    save transaction a
    delete from emp
    rollback transaction a
    select * from emp
    commit
    Problème 1 : rien ne s'affiche...
    Problème 2 : la transaction n'est pas commit

    J'ai passé des heures dessus, qui peut m'aider svp?

    Quelle est la réponse :§?

  2. #2
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Citation Envoyé par EleanoreDes Voir le message
    Bonsoir
    Afficher le contenu de toute la table
    Définir un point intermédiaire de transaction
    Vider entièrement la table
    Confirmer que la table est vide
    Annuler la dernière opération DELETE
    Confirmer que toutes les lignes existent
    Rendre les changements permanents
    • l'affichage n'est pas transactionnel, pas besoin de le mettre dans la transaction. A moins qu'il faille garantir une lecture répétable (REPEATABLE READ) ?
    • donc inutile ensuite de sauver la transaction, elle n'a rien fait.
    • après le ROLLBACK, la transaction est annulée, donc il n'y a pas besoin de rendre les changements permanents, puisqu'il n'y en a aucun.


    Probleme 1 : rien ne s'affiche...
    Probleme 2 : la transaction n'est pas commit
    • "rien" ne s'affiche. Ca veut dire quoi, rien ? L'écran est éteint ?
    • non, est n'est pas validée puisque tu viens de l'annuler.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT * FROM emp;
     
    BEGIN TRANSACTION;
    DELETE FROM emp;
    SELECT * FROM emp;
    ROLLBACK;
     
    SELECT * FROM emp;

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2013
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    Merci

    Ou se trouve le "Définir un point intermédiaire de transaction" ?

  4. #4
    Expert confirmé
    Avatar de rudib
    Homme Profil pro
    Fakir SQL Server & NoSQL
    Inscrit en
    Mai 2006
    Messages
    2 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Fakir SQL Server & NoSQL

    Informations forums :
    Inscription : Mai 2006
    Messages : 2 573
    Points : 4 043
    Points
    4 043
    Par défaut
    Citation Envoyé par EleanoreDes Voir le message
    Merci

    Ou se trouve le "Définir un point intermédiaire de transaction" ?
    "donc inutile ensuite de sauver la transaction, elle n'a rien fait."
    Pourquoi définir un point intermédiaire après un simple SELECT ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2013
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Décembre 2013
    Messages : 35
    Points : 23
    Points
    23
    Par défaut
    ben je comprends pas justement
    C'est l'énoncé du prof

  6. #6
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Points : 13 092
    Points
    13 092
    Par défaut
    Citation Envoyé par EleanoreDes Voir le message
    C'est l'énoncé du prof
    Bah... il est stupide ! (l'énnoncé, pour le prof, je réserve mon jugement )

Discussions similaires

  1. [Requête] SQL SERVER 2000 / Transact SQL
    Par plutonium719 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/09/2007, 17h56
  2. [SQL Server 2000] Transaction deadlocked
    Par CyrilT dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 25/09/2006, 15h49
  3. Informations sur les transactions, commit et rollback AIDE ?
    Par QAYS dans le forum Connexion aux bases de données
    Réponses: 7
    Dernier message: 23/09/2006, 13h44
  4. [ASP.Net/SqlServer/Transaction] Commit ou pas ?
    Par totoche9 dans le forum Accès aux données
    Réponses: 3
    Dernier message: 17/08/2006, 14h22
  5. DBExpress, transactions, Commit et performances...
    Par KRis dans le forum Bases de données
    Réponses: 2
    Dernier message: 21/01/2006, 03h01

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