|
|
|
|
chmanu, le mardi 20 avril 2004 à 11:37:52insert into Produit_DangerP (Produit_DangerP.IDDangerP, Produit_DangerP.IDProduit) select 2, IMP_produits.IDProduit from IMP_produits, IMP_Caract_Produits where IMP_Caract_Produits.inflammable = "-1" and IMP_Caract_Produits.IDProduit = IMP_produits.IDProduit
Query OK, 51 rows affected (0.02) sec Records: 51 Duplicates: 0 Warnings: 0
select distinct * from IMP_Caract_Produits where IMP_Caract_Produits.inflammable
52 rows in set (0.01) sec
Pas évident à première vue ... peux tu nous communiquer la structure des tables afin de tester (sauf si ces tables sont confidentielles bien sur).
++ |
Bonjour,
merci de me répondre, mais effectivement, je prefere garder l'entiere structure pour moi. J ai également utilisé cette méthode depuis d autres tables vers encore d autres et je n ai pas eu de pb. Je me demandais juste si il y avait une faille dans ma requete, dans le moteur de MySQL (ce qui m etonnerait), ou dans une quelconque particularite qui m aurait echapé sur les données (j ai fait un import depuis access à la base - ce qui est peut etre une bonne piste d explication) Chmanu
|
oui, effectivement, bonne remarque, mais toutes mes valeurs sont à -1 et j ai également essayé avec
select distinct * from IMP_Caract_Produits where IMP_Caract_Produits.inflammable="-1" et j ai le meme résultat (52 enregistrements connus) Chmanu |
Bonjour, je crois que dans ton INSERT tu RECUPERE les données pas seulement de la table "IMP_Caract_Produits" , mais tu as une jointure des 2 tables "IMP_Caract_Produits" ET "IMP_produits" alors dans ce cas il faut faire :
SELECT COUNT(*) FROM IMP_produits, IMP_Caract_Produits where IMP_Caract_Produits.inflammable = "-1" and IMP_Caract_Produits.IDProduit = IMP_produits.IDProduit ==> SI ça donne que 51 , ça montre que un IDPRODUIT existe dans l'une et pas dans l'autre. |
Bingo,
en effet, SELECT COUNT(*) FROM IMP_Caract_Produits where IMP_Caract_Produits.inflammable = "-1"retourne 52 et SELECT COUNT(*) FROM IMP_produits, IMP_Caract_Produits where IMP_Caract_Produits.inflammable = "-1" and IMP_Caract_Produits.IDProduit = IMP_produits.IDProduit Et comme j insérais IMP_Produit.IDProduit et non IMP_Caract_Produit.IDProduit, il ne connaissai pas et n insérait donc pas. Merci beaucoup, c'est vrai que j'avais pas pensé à ca, c etait tellement improbable. En fait, c est un projet que je reprend, et je m apercois au fil du temps que le concepteur n avait pas de notions de bdd. et donc dans ce cas, un produit était considéré inflammable sans avoir été défini auparavant. Chmanu |
C'est vrai , il faut toujours faire attention aux jointures entre les tables de tes requettes , que ça soit pour un SELECT ou UPDATE ou DELETTE.
Bon courage |
| 07/04 17h27 | Utiliser l'Administrateur caché de Vista | Windows Vista |
| 28/12 00h00 | [PHP] Récupérer login et mot de passe passés par un .htaccess | PHP |
| 04/03 09h41 | Les standards téléphoniques | e-outils et progiciels |
| 07/03 16h50 | Signature automatique | e-outils et progiciels |
| 06/05 10h45 | ajouter son site dans les moteurs de recherche | Référencement |
| 04/01 16h47 | [PhP/Mysql] résultat d'1 requete en array | 6 |
| 29/04 22h51 | Envoi du résultat d'1 requète mysql dans lien | 9 |
| 20/06 14h42 | [PHP/MySql] Resultat de requete | 8 |
| 22/02 10h52 | [PHP-MySQL] afficher le resultat d'une requet | 4 |
![]() | MySQL - MySQL est une des systèmes de gestion de bases de données le plus répandu au monde. | Catégorie: Bases de données Licence: Open Source |
![]() | WAMP Server - WAMP5 (WAMP signifiant Windows Apache Mysql PHP) est une plateforme de développement Web sous Windows. Il vous permet de... | Catégorie: Serveurs Licence: Freeware/gratuit |
![]() | easyPHP - EasyPHP est un environnement de travail packagé comprenant le serveur web Apache, le système de gestion de bases de données... | Catégorie: Serveurs Licence: Open Source |
![]() | DB Designer - DB designer 4 est un logiciel permettant de concevoir visuellement des bases de données. Il possède également des fonctions... | Catégorie: Bases de données Licence: Open Source |