Bonjour à tous,

J'ai fait des recherches sur le net et dans ce forum mais je n'ai pas trouvé de réponse à mon problème.

Je comprend la fonction de base et elle fonctionne chez mon hébergeur
INSERT INTO table (cle,vote) VALUES (1337,10) ON DUPLICATE KEY UPDATE vote=vote+10;

Mon problème réside dans le fait que je n'arrive pas à comprendre la structure de ma table que je devrait avoir pour résoudre mon problème.

Voici ma table :
CREATE TABLE TBL_USERSBUILDINGS (
fld_usersbuildingsID int(11) NOT NULL auto_increment,
fld_userID int(11) NOT NULL default '0',
fld_buildingID int(11) NOT NULL default '0',
fld_qty int(11) NOT NULL default '0',
PRIMARY KEY (fld_usersbuildingsID)
)

Un fld_userID peut avoir plusieurs fld_buildingID avec une quantité pour chacun des buildings (fld_qty), mais je peux avoir plusieurs fld_userID avec le même fld_buildingID que le précédent mais avec une quantité différente.

fld_userID fld_buildingID fld_qty
2 5 8
2 8 3
2 9 11
1 9 7
1 2 12


Si je fais :
INSERT INTO TBL_USERSBUILDINGS (fld_buildingID ,fld_qty, fld_userID) VALUES (8,10,2) ON DUPLICATE KEY UPDATE fld_qty=fld_qty+10;
cette requete fonctionne, mais ne produit pas ce que je veux. Elle fait seulement un nouvel insert avec un nouveau ID (fld_usersbuildingsID)

Comment faire si je veux ajouter un nombre X de building selon un ID et un user et ne pas faire de doublon sur la combinaison fld_buildingID et fld_userID ??


merci beaucoup à l'avance

Si vous avez des questions ou besoin de présicion je vais répondre rapidement