|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre chevronné
![]() ![]() |
Bonjour,
Pas un grand spécialiste de SQL, je cherche à réaliser un upsert directement avec SQL avec le moteur MyIsam, sans jongler avec le code (bash) : La table "model" Code :
Voila ma tentative d'upsert : Code :
INSERT INTO model (id_model, id_product, prod_model, prod_firmware, updated) VALUES (NULL,20,\"mon_produit\",\"son_firmware\",null) ON DUPLICATE KEY UPDATE updated=null Comment procéder svp ? PS: rien vu dans la FAQ ni dans ce tuto à propos d'upsert. |
||
|
|
00
|
|
|
#2 | ||
|
Membre chevronné
![]() ![]() |
Euh, je crois que j'ai trouvé, c'est une erreur de logique :
Ce que je veux, c'est un couple unique de (`prod_firmware`,`prod_model`) et ne pas créer de nouvel id_model (auto incrémenté) dans le cas d'une insertion d'un couple existant. Donc il faut que la contrainte d'unicité porte sur ce couple (`prod_firmware`,`prod_model`) et non sur le tuple (`id_model`, `prod_firmware`,`prod_model`), comme ceci : Code :
|
||
|
|
00
|
|
|
#3 |
![]() ![]() ![]() Antoine DinimantConsultant en Business Intelligence Inscription : octobre 2006 Messages : 5 854 ![]() |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com