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

ASP.NET Discussion :

Transaction SQL -> Nécessaire ou pas ?


Sujet :

ASP.NET

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : Pays-Bas

    Informations forums :
    Inscription : Décembre 2005
    Messages : 186
    Points : 133
    Points
    133
    Par défaut Transaction SQL -> Nécessaire ou pas ?
    Bonjour,

    Je me pose un problème sur les transactions, j'ai lu les infos dessus sur msdn (http://msdn.microsoft.com/fr-fr/library/2k2hy99x.aspx), mais les exemples qui sont données utilisent un objet "sqlTransaction" qui sert pour plusieurs requêtes envoyées séparément dans plusieurs ExecuteNonQuery de l'objet command.

    Ma question est :
    est-ce que ce type de transaction est utile pour plusieurs requêtes envoyées simultanément dans le même ExecuteNonQuery ?
    Ex :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SQL="UPDATE Table1 SET valeur=@nouvelle_valeur WHERE condition=@condition;UPDATE Table2 SET valeur=@nouvelle_valeur WHERE condition=@condition;"
    myCommand.CommandText=SQL
    myCommand.ExecuteNonQuery()
    Est-ce qu'il est plutôt souhaitable d'utiliser un transaction en SQL directement (BEGIN TRAN T1 etc) ? Ou est-ce carrément inutile ?

    Merci d'avance !

  2. #2
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Je dirais que tout dépend du type de données que tu traites.
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : Pays-Bas

    Informations forums :
    Inscription : Décembre 2005
    Messages : 186
    Points : 133
    Points
    133
    Par défaut
    Merci pour ta réponse.

    Les données que je traite sont des login / password
    C'est assez mal pratique, mais j'ai 2 tables qui doivent stocker les identifiants login/password. Il faut donc si un utilisateur décide de modifier son login ou son password que je sois sur que la modif a eu lieu dans les 2 tables, d'ou l'idée d'une transaction pour éviter qu'un plantage ne me donne une mise à jour incomplète.

  4. #4
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    Dans ce cas là, je te suggère de faire cela dans une transaction...

    Mais faire des transactions pour tout et n'importe quoi n'est pas vraiment optimal comme procédé.
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : Pays-Bas

    Informations forums :
    Inscription : Décembre 2005
    Messages : 186
    Points : 133
    Points
    133
    Par défaut
    Merci pour ta réponse ! Transacation donc !
    Par contre tu as une idée si je dois gérer la transaction côté VB avec un objet connection ou côté SQL ? J'ai tendance à penser que je dois la gérer côté SQL puisque je balance 2 requêtes dans le même commandText, donc tout se passe niveau SQL Server.

  6. #6
    Membre expérimenté Avatar de bossun
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    1 359
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2002
    Messages : 1 359
    Points : 1 443
    Points
    1 443
    Par défaut
    tu peux gérer tes transactions au niveau VB mais tu peux le faire au niveau sql si tu as des procédure stockées. le résultat est le même.
    il vaut mieux prendre son pied que de se prendre la tête!!

    http://bossun.noxblog.com

Discussions similaires

  1. [MySQL] Transactions SQL marche pas
    Par vocal94130 dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 01/06/2010, 12h50
  2. [JDBC][Access] Transaction SQL sur MS Access?
    Par Twofy dans le forum JDBC
    Réponses: 2
    Dernier message: 19/08/2004, 14h46
  3. Transact Sql : Conversion de variable
    Par lord_paco dans le forum Langage SQL
    Réponses: 2
    Dernier message: 13/08/2003, 13h25
  4. Conversion de SQL à Transact-SQL
    Par sebioni dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/07/2003, 11h59
  5. - fonction Transact-SQL...
    Par korrigann dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 22/05/2003, 15h00

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