Juste une question rapide concernant le stockage de "temps" dans une base de données. Je suis enregistré l'heure des utilisateurs exécutions qui se trouvent au format 00: 00: 00: 00 (heures, minutes, secondes, millisecondes).
J'allais à l'origine le stocker comme TIME
mais j'ai réalisé que MySQL ne prend pas en charge les millisecondes de ce type.
Je vais stocker le temps réel pris à partir du chronomètre des utilisateurs, pas le moment où ils ont couru et fini (cela sera calculé avant d'être inséré).
Quel serait le meilleur type de champ à utiliser? Je pensais soit double
_ float
, mais je ne suis pas sûr que cela fonctionnerait?
Cela dépend de combien de temps vous voulez mesurer. Si vous n'enregistrez pas d'autres fois plus de 2 ^ 32, ou 4294967296 ms qu'un Int Signé Int est tout simplement bien. Cela correspond à environ 50 jours d'horloge, BTW.
Si vous stockiez des timbres de l'heure unix ou des intervalles plus importants, regardez à l'aide de Bigint. Cela vous donne 8 octets d'espace ou la capacité d'enregistrer des temps à la longueur de 1,84467440737096E + 19 ms (qui est environ 500 millions d'années)