begin process at 2012 02 14 14:35:35
  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

Problème avec les conditions, lors de l'identification [ par MoulouD1993 ] Bonsoir à tous, Voilà j'ai un problème avec les conditions [^^sad1] le problème c'est que j'ai une page index.html et une page login.php le problème requete sql [ par moza2409 ] Bonjour à tous, Je bloque sur un probleme de requete sql sur 2 tables. J'explique mon probleme : J'ai une table qui ce nome Client avec les champs id XSS dans requete sql un peu spéciale [ par mickadevelop ] Bonjour à tous et toutes,J'ai une question concernant les requete mysql et la sécurité relative au injections sql.(cette requete est utilisé que pour Requête SELECT en échec dans case new et Connexion impossible au serveur dans case login [ par Averell34 ] [^^!2][^^!2]Bonjour, Je débute en PHP et j'essai de faire un espace réservé pour mon site, seulement, voilà les réponses quand je clique sur : enreg Probleme lien relatif/lien absolu pour requete sql [ par antoinesoler ] Bonjour a tous, je rencontre un problème lors de l'exécution d'une requête sql utilisant un lien vers un fichier. Je m'explique : je souhaite mettre Probleme requete sql [ par moza2409 ] Bonjour à tous, J’ai un petit problème avec une requête sql, j’explique mon problème : J’ai un formulaire d’inscription avec les champs pseudo, ema Systeme de connexion [ par geof2810 ] Bonjour a tous, voila j'ai un code qui apparemment ne marche pas correctement je vous explique le principe et puis je vous mets le code. Donc voila Probleme avec la concatenation [ par jam83 ] Bonjours, Voila mon problème: Pour commencer le membre se connecte a mon site et je garde son pseudo en session, jusque là ok, ensuite il clique sur Probleme interogation 2 table [ par casper77610 ] Bonjour à tous, Voici mon code. Et je vous explique mon problème. [code=php] <?php $db = mysql_connect('localhost', 'root', '') or die('HOST ?'); mysq création d'une plate forme d'une université (site web dynamique) [ par bestgirl88 ] SVP est ce qu'il y a quelqu'un qui peut m'aider ... je suis entrain de faire un site web d'une faculté universitaire ... j'ai pu faire la partie du su


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 5,710 sec (3)

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