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

Requêtes MySQL Discussion :

Evaluer des requêtes SQL avant leurs execution ?


Sujet :

Requêtes MySQL

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 65
    Points : 52
    Points
    52
    Par défaut Evaluer des requêtes SQL avant leurs execution ?
    Bonjour à tous,

    voici, donc mon problème. J'aimerais savoir si il existe des fonctions (PHP & MySQL) permettant d'évaluer une requête SQL sans pour autant l'exécuter sur la base de donnée.

    En effet je suis actuellement sur un scripts qui lors de l'envoie du formulaire et après traitement de celui-ci, se doit d'éxécuté 4 requêtes SQL.

    Le problème est donc que si la 3ème requête genere une erreur, les 2 premières sont malheureusement déjà executé, or je veux que l'execution des 4 requêtes ne se fasse que si les 4 sont valides et ne renvoies aucune erreur.

    Ma solution serai donc de faire deuxième requête (DELETE) après chaque requête d'insertion (INSERT), suivi d'une incrémentation d'une variable en cas de succès puis de vérifié si la variable vaut 4 dans ce cas alors reéxecuter les 4 requetes d'insertions.
    Je trouve celle solution lourd, et c'est pourquoi je me suis posé la question sur l'existence de fonction d'évaluation.

    Merci.

  2. #2
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    685
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Points : 658
    Points
    658
    Par défaut
    Si tu penses que tu auras des erreurs de requêtes, c'est que la fiabilité de ton script doit-être incertaine quand même

    Sinon, en reprenant ta méthode, mais en un peu moins lourd, serait d'exécuter ton INSERT uniquement si le précédent a réussi, si échec tu effaces les derniéres lignes en te basant sur le dernier id inséré ( mysql_insert_id() ou LAST_INSERT_ID par une requête )

    Exemple :

    1er insert
    si bon
    --- Récupération de l'id de cet insert en le mettant dans une variable (v1)
    --- 2nd insert
    ------ Si bon
    --------- Récupération de l'id de cet insert en le mettant dans une variable (v2)
    ------------ 3ème insert
    ------------ etc......
    ------ Pas bon
    ------------ suppression de la ligne correspondante à v1 dans la 1ère table
    ------------ suppression de la ligne correspondante à v2 dans la 2nde table.
    donc pas bon
    --- suppression de la ligne correspondante à v1 dans la 1ère table.

    Ca fait plus de code à faire, mais c'est quand même moins lourd.

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Juin 2005
    Messages
    65
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2005
    Messages : 65
    Points : 52
    Points
    52
    Par défaut
    Okay merci, non jpense pas qu'il va y avoir des erreurs mais bon je préfère tous prévoir ne sait on jamais ^^.

    Bon sinon je vais utilisé ta méthode et renforcé encore mes vérifications niveau PHP

    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment verifier les requétes avant leur execution
    Par hilarious dans le forum Administration
    Réponses: 9
    Dernier message: 06/08/2010, 18h34
  2. [PHP 4] Appeler des requêtes SQL en leur passant des paramètres
    Par grinder59 dans le forum Langage
    Réponses: 3
    Dernier message: 23/02/2009, 12h06
  3. [MFC] comment écrire des requêtes SQL
    Par kitsune dans le forum MFC
    Réponses: 9
    Dernier message: 27/09/2005, 15h23
  4. Journal des requêtes SQL effectuées
    Par Kcirtap dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 18/07/2005, 09h58
  5. Recherche ibrairie pour éxécuter des requêtes SQL via C++
    Par daemon dans le forum Choisir un environnement de développement
    Réponses: 5
    Dernier message: 14/06/2004, 10h28

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