J'ai une table crée de cette façon :
Code : Tout sélectionner
"CREATE TABLE IF NOT EXISTS `proddata` (date DATE, heure TIME, prod INT, PRIMARY KEY(date, heure));"J'ai deux besoins en insertion avec on duplicate key (ou autrement!) :date - heure - prod
2013-11-27 - 10:09:08 - 578
2013-11-27 - 12:11:10 - 965
2013-11-27 - 15:14:13 - 123
- La première étant de n’insérer qu'une seule valeur par jour, ainsi je souhaite comparer selon la colonne DATE. En gros si j'envoi 2013-11-27 - 10:09:08 - 578 puis 2013-11-27 - 12:11:10 - 965 je n'aurais dans ma table que la dernière saisie, à savoir 2013-11-27 - 12:11:10 - 965.
La seconde étant d’insérer autant de valeur par jour que nécessaire, ainsi je souhaite comparer selon la colonne DATE mais également HEURE. En gros si j'envoi 2013-11-27 - 10:09:08 - 578 puis 2013-11-27 - 12:11:10 - 965 j'aurais dans ma table toutes les lignes puisque à des horaires différents, à savoir 2013-11-27 - 10:09:08 - 578 et 2013-11-27 - 12:11:10 - 965.
Code : Tout sélectionner
$stmt = $pdo->prepare('INSERT INTO `proddata` (date, heure, prod) VALUES (str_to_date('.$date.',\'%Y%m%d\'), '.$heure.', '.$texte[1].') ON DUPLICATE KEY UPDATE date = VALUES(date)');
$stmt->execute();