[+/-]
      Les types dates et heures sont DATETIME,
      DATE, TIMESTAMP,
      TIME, et YEAR. Chacun d'eux
      à une échelle de valeurs légales, de même que la valeur
      ``zéro'' quand vous spécifiez une valeur illégale. A noter que
      MySQL vous permet d'enregistrer certaines dates qui ne sont pas
      strictement légales, par exemple 1999-11-31.
      La raison est que nous pensons que la vérification des dates est
      à faire niveau application. Pour accélérer les tests, MySQL
      vérifie juste que le mois est entre 0 et 12 et que le jour est
      entre 0 et 31. Les intervalles précédentes sont définies de
      cette fa¸on car MySQL vous permet d'enregistrer dans une colonne
      DATE ou DATETIME, des dates
      où le jour de la semaine ou le jour du mois est zéro. C'est
      extrêmement utile pour les applications où vous avez besoin
      d'enregistrer une date d'anniversaire pour laquelle vous n'avez
      pas la date exacte. Dans ce cas, vous enregistrez simplement la
      date comme 1999-00-00 ou
      1999-01-00. (Vous ne devez pas vous attendre à
      obtenir de valeurs correctes de fonctions tel que
      DATE_SUB() ou DATE_ADD pour
      des dates comme cela.)
    
Voici quelques considérations à garder à l'esprit quand vous manipulerez ce type de champs :
MySQL extrait les valeurs d'un champ date ou heure dans un format standard, mais essaye d'interpréter une grande variétés de format pour les valeurs que vous donnez (par exemple, quand vous essayez de comparer ou attribuer une valeur à un champ de type date ou heure). Néanmoins, seul les formats décrits dans les sections suivantes sont disponibles. Il est attendu que vous fournissiez des valeurs légales et des erreurs imprévues peuvent survenir si vous utilisez d'autre formats.
          Même si MySQL essaye d'interpreter les valeurs sous
          différents formats, il s'attend toujours à ce que l'année
          soit dans la partie gauche de la valeur. Les dates doivent
          êtres données sous la forme année-mois-jour (exemple :
          98-09-04), au lieu de mois-jour-année ou
          jour-mois-année qui sont très utilisés ailleurs (comme
          09-04-98 ou '04-09-98').
        
Les dates représentées par deux chiffres pour les années sont ambigues, car le siècle n'est pas connu. MySQL interprète les années sur deux chiffres suivant les règles suivantes :
              Si l'année est dans l'intervalle
              00-69, elle est convertie en
              2000-2069.
            
              Si l'année est dans l'intervalle
              70-99, elle est convertie en
              1970-1999.
            
MySQL convertit automatiquement une date ou heure en nombre si la valeur est utilisée dans un contexte numérique et vice versa.
          Lorsque MySQL rencontre une valeur hors d'intervalle pour un
          type date ou heure qui est donc illégale pour ce type (voir
          le début de cette section), il la convertit à la valeur
          ``zéro'' de ce type. (L'exception est que les valeurs hors
          intervalles pour les champs TIME sont
          coupées à la limite appropriée des valeurs de
          TIME.) Le tableau suivant présente le
          format de la valeur ``zéro'' de chaque type :
        
| Column type | valeur du ``zéro'' | 
| DATETIME | '0000-00-00 00:00:00' | 
| DATE | '0000-00-00' | 
| TIMESTAMP | 00000000000000(la longueur dépend de la taille de
                  l'affichage) | 
| TIME | '00:00:00' | 
| YEAR | 0000 | 
          La valeur ``zéro'' est spéciale, mais vous pouvez
          l'enregistrer ou vous y référer explicitement en utilisant
          les valeurs contenues dans le tableau ci dessus. Vous pouvez
          aussi le faire en utilisant la valeur '0'
          ou 0 qui est plus facile à manipuler.
        
          La date ou le temps ``Zéro'' utilisé avec
          MyODBC est automatiquement convertie en
          NULL à partir de la version 2.50.12 de
          MyODBC, car ODBC ne peut manipuler de
          telles valeurs.
        
This is a translation of the 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.

