Mysql: INSERT IF NOT EXISTS
Résolu/Fermé
developper55
Messages postés
123
Date d'inscription
vendredi 28 décembre 2007
Statut
Membre
Dernière intervention
30 mai 2012
-
24 janv. 2008 à 15:53
developper55 Messages postés 123 Date d'inscription vendredi 28 décembre 2007 Statut Membre Dernière intervention 30 mai 2012 - 23 août 2008 à 12:36
developper55 Messages postés 123 Date d'inscription vendredi 28 décembre 2007 Statut Membre Dernière intervention 30 mai 2012 - 23 août 2008 à 12:36
A voir également:
- Insert into if not exist sql
- Mysql select or insert if not exists - Meilleures réponses
- Mysql insert into table if not exists - Meilleures réponses
- Mysql download - Télécharger - Bases de données
- Mysql error in file: /engine/classes/mysql.php at line 53 ✓ - Forum Réseaux sociaux
- Mysql a répondu : documentation connexion impossible : paramètres incorrects. - Forum Bases de données
- Phpmyadmin a tenté de se connecter au serveur mysql, et le serveur a rejeté la connexion. merci de vérifier les valeurs de host, username et password dans la configuration et de s'assurer qu'elles correspondent aux informations fournies par l'administrateur du serveur mysql. ✓ - Forum PHP
- Le paquet « mysql-server » n'a pas de version susceptible d'être installée ✓ - Forum Debian
8 réponses
developper55
Messages postés
123
Date d'inscription
vendredi 28 décembre 2007
Statut
Membre
Dernière intervention
30 mai 2012
9
24 janv. 2008 à 16:06
24 janv. 2008 à 16:06
est la solution ?
je lance deux requêtes, une pour tester , une pour injecter
je lance deux requêtes, une pour tester , une pour injecter
30 juin 2008 à 21:51
INSERT INTO Table
SELECT I.ID, I.Name
FROM
(
SELECT @ID, @Name
) I
LEFT OUTER JOIN
Table T
ON I.ID = T.ID
WHERE T.ID IS NULL
Cela n'insère que ce qui n'est pas présent dans la Table ciblée, bien entendu on parle là de tables normalisées, avec une PK.
Si tu devais checker d'autres valeurs, il suffirait de les ajouter à la clause ON qui ferait alors tout le boulot pour faire une extraction d'ensembles.
Tu checkes ROW_COUNT() à la sortie, et t'es au top pour savoir si tu dois faire un UPDATE à la place si ROW_COUNT() = 0.
Hope it helps