| MySQL lit
et affiche les colonnes de type TIME
au format 'HH:MM:SS' (ou 'HHH:MM:SS'
pour les grandes quantités d'heures).
Les valeurs de TIME vont de '-838:59:59'
à '838:59:59'. La raison de cet
intervalle de validité si large
est que les colonnes de type TIME peuvent
être utilisés pour représenter
non seulement des heures du jour, mais
aussi des durées entre deux événements
(ce qui peut dépasser largement
les 24 heures, ou même, être
négatif).
Vous pouvez spécifier une
valeur de type TIME avec différents
formats :
Une chaîne au format 'D HH:MM:SS.fraction'.
(Notez que MySQL ne stockera pas la
fraction d'une valeur TIME.)
Vous pouvez aussi utiliser l'une
des syntaxes alternatives suivantes
: HH:MM:SS.fraction, HH:MM:SS, HH:MM,
D HH:MM:SS, D HH:MM, D HH ou SS. Ici,
D peut prendre des valeurs entre 0
et 33.
Une chaîne sans délimiteur
au format 'HHMMSS', en supposant que
cela puisse avoir un sens en terme
de date. Par exemple, '101112' est
interprété comme '10:11:12',
mais '109712' est invalide (le nombre
de minutes n'a pas de sens), et devient
la date zéro : '00:00:00'.
Un nombre au format HHMMSS, en supposant
que cela puisse avoir un sens en terme
de date. Par exemple, 101112 est interprété
comme '10:11:12'. Les formats alternatifs
sont aussi compris : SS, MMSS, HHMMSS
et HHMMSS.fraction. Notez que MySQL
ne stocke pas encore les fractions
de secondes.
Le résultat d'une fonction
qui retourne une valeur acceptable
dans un contexte de valeurs TIME,
comme CURRENT_TIME.
Pour les valeurs TIME spécifiées
avec des délimiteurs, il n'est
pas nécessaire de préciser
deux chiffres pour les valeurs inférieurs
à 10 pour les heures, minutes
et secondes. '8:3:2' est la même
chose que '08:03:02'.
Soyez soigneux lors de l'utilisation
de valeurs ``courtes'' à une
colonne de type TIME. MySQL interprète
les valeurs en supposant que les chiffres
de droite représentent les secondes
(MySQL interprète les valeurs
TIME comme des durées et non
comme des heures d'une journée).
Par exemple, vous pouvez penser que
les valeurs '11:12', '1112' et 1112
représentent '11:12:00' (12 minutes
après 11 heures), mais MySQL
les interprétera comme '00:11:12'
(11 minutes, 12 secondes). Similairement,
'12' et 12 représentent '00:00:12'.
Les valeurs de TIME déclarées
avec des :, au contraire, sont toujours
traités comme des heures de journée.
'11:12' signifiera '11:12:00' et non
pas 00:11:12
Les valeurs hors de l'intervalle de
validité de TIME mais qui sont
valides sont ramenées à
la valeur maximale stockable la plus
proche. Par exemple, '-850:00:00' et
'850:00:00' sont respectivement converties
en '-838:59:59' et '838:59:59'.
Les valeurs TIME non valides sont transformées
en date zéro '00:00:00'. Notez
que comme '00:00:00' est elle-même
une valeur TIME valide, vous n'aurez
pas le moyen de faire la différence
entre une valeur '00:00:00' stockée
en connaissance de cause, et '00:00:00'
stockée à cause d'une
erreur.
MySQL Reference Manual that can
be found at dev.mysql.com. The original
Reference Manual is in English, and
this translation is not necessarily
as up to date as the English version.
|