Bonjour à tous.
Voilà le petit soucis que j'ai quand je veux mettre à jour un contenu d'une cellule d'une base SQL.
La base en elle-même :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 CREATE TABLE bdd_anl.Nageur ( id INT( 3 ) NOT NULL, nom VARCHAR( 20 ) NOT NULL , prenom VARCHAR( 20 ) NOT NULL , sexe CHAR(1) NOT NULL , age INT(2) NOT NULL , nage VARCHAR(10) NOT NULL , heure_depart TIME NOT NULL, temps TIME NOT NULL, distance INT(5) , vitesse FLOAT(4, 2) , actif BOOL NOT NULL , ligne INT(1) , bonnet INT(1) , PRIMARY KEY ( id ) ) ENGINE = MYISAM;
Donc voilà, après avoir mis l'heure de départ avec un programme en Java, je dois mettre à jour la cellule "temps" en faisant l'opération du temps actuel moins l'heure de départ. La commande ci-dessous résume bien tout.
Le soucis est que la majorité du temps, il y a cette erreur qui se produit et que j'aimerai bien écarter. La valeur '88' correspond à l'intervalle de temps du temps de départ et le moment où j'effectue la requête SQL :
mysql> update Nageur set temps = current_time()-heure_depart where id='1';
ERROR 1292 (22007): Incorrect time value: '88' for column 'temps' at row 1
et de temps à autre la requête, tout fonctionne comme il faut :
mysql> update Nageur set temps = current_time()-heure_depart where id='1';
Query OK, 1 row affected <0.00 sec>
Rows mached: 1 Changer: 1 Warning: 0
Je ne sais pas d'où ça peut venir et j'ai bien entendu fait des recherches sur cette erreur sans trouver de solution pour mon cas.
Avez-vous des idées?
Merci beaucoup et bonne journée
Partager