Si une chaîne ou un nombre, même sans aucun délimiteur, au format AAAAMMJJHHMMSS ou AAMMJJHHMMSS a du sens lors de la fourniture d'une date, alors MySQL interprète la chaîne comme une date valide.
Exemples donnés de dates valides et invalides -
mysql> Select Timestamp(20171022040536); +---------------------------+ | Timestamp(20171022040536) | +---------------------------+ | 2017-10-22 04:05:36 | +---------------------------+ 1 row in set (0.00 sec) mysql> Select Timestamp('20171022040536'); +-----------------------------+ | Timestamp('20171022040536') | +-----------------------------+ | 2017-10-22 04:05:36 | +-----------------------------+ 1 row in set (0.00 sec) mysql> Select Timestamp('171022040536'); +---------------------------+ | Timestamp('171022040536') | +---------------------------+ | 2017-10-22 04:05:36 | +---------------------------+ 1 row in set (0.00 sec)
La requête ci-dessus montre des exemples de chaînes valides ainsi que de nombres, que MySQL peut interpréter comme des valeurs de date.
mysql> Select Timestamp('20171022048536'); +-----------------------------+ | Timestamp('20171022048536') | +-----------------------------+ | NULL | +-----------------------------+ 1 row in set, 1 warning (0.00 sec)
La requête ci-dessus est un exemple de chaîne invalide. MySQL renvoie NULL car la chaîne a une valeur incorrecte (85) dans la minute.
mysql> Select Timestamp('20171322040536'); +-----------------------------+ | Timestamp('20171322040536') | +-----------------------------+ | NULL | +-----------------------------+ 1 row in set, 1 warning (0.00 sec)
Dans la requête ci-dessus, MySQL renvoie NULL car la valeur de la chaîne mois (13) est erronée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!