je voudrai faire une comparaison entre une date récupérée à partir d'une table (dateinscription from tableinscription) et un textbox contenant une date (txtdateversement). Pour cela, je pense qu'il faudrait que je convertisse le contenu de txtdateversement en date. Avant j'utlisais la fonction CDate lorsque j'utilisais Access comme SGBD mais ça ne marche pas avec SQL Server. Le code suivant marche pour SQL Server:
tableinscription.dateinscription >= Cast('" & txtdateversement & "' as DATETIME)
mais je ne sais pas si c'est correcte et si c'est la meilleure des manières de procéder.
Tu es réellement en VB6 (catégorie de la question) ?
Confirme-le car les solutions peuvent être différentes; ou dis-nous dans quel environnement tu te trouves.
De quel type - quelle déclaration du type dans la DB - pour ton champ dateinscription ?
Le type correct de symbole d'encadrement pour une donnée de type Date dans une base de données est le #, pas le '
Attention aussi au format des dates.
En général, elles sont stockées à l'anglaise MM/DD/YYYY.
Dans la connexion à la base (*) avec un objet ADO, tu peux utiliser la property nommée "Locale Identifier", exemple : voir <cette précédente réponse> sur le forum.
Cette utilisation permettra l'affichage des dates sous le format correct|désiré.
(*) dans le cas d'application externe
Quel est le format de la donnée renfermée dans ta TextBox ?
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)