begin process at 2010 02 10 01:56:30
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

Pb de requete SQL avec IF


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Pb de requete SQL avec IF

samedi 5 avril 2008 à 15:33:05 | Pb de requete SQL avec IF

dvdstory

Membre Club
Bonjour à tous.

Je veux ajouter un pseudo dans ma table uniuement si le pseudo n'est pas encore présent dans la table.
Donc je dois vérifier si le pseudo n'est pas déja présent dans la table, j'esaye de faire ça avec une structure IF.
Mais ça ne marche pas.


IF (SELECT COUNT(*) FROM `matablel` WHERE `pseudo` = 'pierre')=0 THEN
INSERT INTO `matable` (`pseudo`)
VALUES ('pierre')
END IF

Voici le message d'erreur que MySQL me renvoie

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'IF( SELECT COUNT( * ) FROM `matable` WHERE `pseudo` = 'pierre' )=0 THEN  INSERT ' at line 1

Merci d'avance


samedi 5 avril 2008 à 15:39:42 | Re : Pb de requete SQL avec IF

nicomilville

Membre Club
ce serai plus facile si tu mettais ton champs pseudo en unique et que si il y a avais une erreur tu disais que le pseudo est déja pris !!

Si t'a besoin d'aide, MP !!!

samedi 5 avril 2008 à 16:52:36 | Re : Pb de requete SQL avec IF

dvdstory

Membre Club
C'est déja fait mais le pb c'est que ça n'est qu'une partie de la requette (je n'ai pas mis le reste pour ne pas encombrer et exposé mon pb clairement car si j'exécute le reste de la requette séparément, elle fonctionne nikel chrome), et que si il y a une erreur, MySQL n'exécute pas la suite. [ Lien ]
dimanche 6 avril 2008 à 08:52:47 | Re : Pb de requete SQL avec IF

bcmfr

Membre Club
euh...
je suis peu etre bete mais ta structure, c'est pas du visual basic??
dans ce cas pourquoi poste ta question sur phpcs?
@+
dimanche 6 avril 2008 à 08:56:17 | Re : Pb de requete SQL avec IF

nicomilville

Membre Club
Je suis con, je n'avais m^me pas remarqué alors que c'est avec ce langage que j'ai commencé !!!

Si t'a besoin d'aide, MP !!!

dimanche 6 avril 2008 à 14:30:06 | Re : Pb de requete SQL avec IF

dvdstory

Membre Club
Non, je veux faire du SQL.
On ne peut pas mettre de structure IF avec du SQL ??

En faite j'utilise LAMP, donc pas de VB.

dimanche 6 avril 2008 à 17:59:58 | Re : Pb de requete SQL avec IF

yoman64

Membre Club
Salut,

Lol, vous êtes bêtes c'est pas du visual Basic ça se ressemble même pas... (Voir comment les champs et les strings sont entourés sans parler du insert sur deux lignes, en vb il fauderait le concatener avec un \...C'est clairement du SQL)

Enfin oui il y a bien une structure IF en SQL sauf que je ne crois pas qu'elle soit adaptée à ton problème, il y a sans doute de meilleure façon de faire (Il fauderait voir ta requête complete et savoir quel résultat tu attends pour t'aider plus).

Voir la doc pour plus d'infos: [ Lien ]

-------------------
Vous cherchez un hebergement Php/MySQL Gratuit et sans publicités ??
Et bien c'est la : www.e3b.org  
dimanche 6 avril 2008 à 18:13:34 | Re : Pb de requete SQL avec IF

bcmfr

Membre Club
ah bah je savais pas qu'on pouvait faire des requetes comme ca, je me coucherais moins con!
dimanche 6 avril 2008 à 18:17:48 | Re : Pb de requete SQL avec IF

nicomilville

Membre Club
moi aussi, lol

Si t'a besoin d'aide, MP !!!

dimanche 6 avril 2008 à 18:44:23 | Re : Pb de requete SQL avec IF

dvdstory

Membre Club

Réponse à yoman64

C'est déja la requête complète, enfaite le reste c'est d'autres requettes séparées par un point virgule ' ; ' qui sont totalement indépendantes et interagisse avec d'autre tables.

Le pb c'est que s'il y a une erreur dans une des requêtes indépendantes alors MySQL  n'exécute plus les requêtes suivantes (même si elle sont indépendante et séparées par un point virgule).
La solution serait que j'envoie les requêtes indépendantes séparément avec PHP et pas toutes en même temps comme je le fait actuellment mais pour les performences c'est pas top du tout et sa ralonge mon code.


PS: j'ai regardé mon livre sur MySQL5,
"MySQL Le guide complet" 
EAN13: 9782742968732  
ISBN: 2-7429-6873-3


J'ai remarqué que les explications sur le "IF THEN" faisait partie du chapitre 14 "Le SQL dynamique" et dans le sous chapitre 14.1 "Les procédures stockées".
Je me suis demandé que peut être la structure IF THEN ne peut être utilisé que dans les procédures stockées.

J'en suis pas sûr je demande confirmation.


Cette discussion est classée dans : table, sql, pseudo, pierre, if


Répondre à ce message

Sujets en rapport avec ce message

Requete SQL [ par haens ] bjr,j'ai une table Commandes contenant un ID(primary key) et un IDClients(lié à une autre table).Je voudrai retourner le nombre d'enregistrement prése lire table sql [ par titiseb ] Bonjour je voudrait avoir un bout de code simple pour visaliser un table mysql (g cherche je troude des truc assez complexe mais jamais le plus basic) Création de Tables via fichier .sql [ par LePhenol ] Bonjour, Je suis en train de créer un install.php pour installer un petit portail que j'ai programmé. J'en suis à la création des Tables SQL dans ma B mysql et php [ par nico606 ] Salut g un probleme je debute en php et je viens de charger un espace membre pour mon site il est evidemment en php et Mysql y a une page d'installati Requete SQL avec PHP : besoin d'aide svp [ par lasof77 ] Bonjour, Je suis debutante en php et j'ai un probleme de recupération de données via sql dans ma base.Je commence par faire une requete globale sur to Requete sql helppppp [ par Wars007 ] Salut tlm!!Je voudrais savoir comment par ex:si la table sql LOL exsite pas cree alors la table LOL???qqun pe y repondre svpmerci :p requete SQL count et distinct [ par samylatortue ] salut,je cherche a faire une requete qui selectionne des nom dans une table et qui compte combien de fois chaque nom apparait.j'ai essayer SELECT nom, Bouton de navigation entre champs d'une table SQL [ par vir76 ] Je possède une table comportant différents articles dotés d'une quantité et d'un prix unitaire. Je dois réaliser la multiplication de la quantité par bonjour j'ai un probleme avec un INSERT INTO [ par timolerigolo ] Bonjour,Voila j'ai une page d'inscription avec 2 INSERT INTO et je voudrais alimanté 2 requéte SQL mé le problème cé que sa alimante que une seule req choix dans table sql [ par magicjim ] Salut a tous voila je voudrai choisir dans ma table toutes les personnes habitant en france et les afficher sur une page(bien sur si je choisi ex: all


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales