Datetime

- - Dernière réponse :  sam - 30 sept. 2019 à 16:11
Bonjour...
Ce message s'affiche lorsque je valide les données saisies
"The conversion of a varchar data type to a datetime data type resulted in an out-of-range value"
Pouvez vous m'indiquer pourquoi et comment résoudre ce problème .
Merci d'avance.
Afficher la suite 

4 réponses

Messages postés
3485
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
14 octobre 2019
915
0
Merci
Bonjour,

Cela signifie que le serveur SQL considère que la date donnée n'est pas valide. Par exemple, un 31 février déclenchera ce genre d'erreur.
Mais attention, cela peut aussi avoir lieu pour une date qui semble valide, par exemple 25/06/2019, si le serveur s'attend à avoir une date au format états-unien : il va inverser le mois et le jour...

Pour pallier cela, le mieux est de spécifier toi-même le format de date attendu plutôt que de laisser le moteur trouver tout seul. Et pour ce faire, cela dépendra de ton SGBD (SQL Server, MySQL, Oracle...).

Xavier
Merci Xavier pour votre réponse ...elle est claire .
Commenter la réponse de Reivax962
Messages postés
26519
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
17 octobre 2019
1832
0
Merci
Bonjour
Sur quel sgbd travailles tu ?
Quel code provoque ton erreur ?
Entres tu bien une date dabs le champ qui pose problème ? ( une date au format valide Y-m-d bien évidemment...? )
Merci pour votre réponse ...Notre SGBD c'est sqlsever...et le format de la date c'est jj/mm/aaaa .
Commenter la réponse de jordane45
Messages postés
3485
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
14 octobre 2019
915
0
Merci
Alors sous SQLServer, tu peux forcer le format comme suit :
CONVERT (DateTime, '25/06/2019', 103)

(Le 103 est issu de la documentation : https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql?view=sql-server-2017#date-and-time-styles )
Commenter la réponse de Reivax962
0
Merci
Je vais essayer cette solution merci encore une fois .
Commenter la réponse de sam