ADO: Comment lire une date ? [Résolu]

Signaler
Messages postés
29
Date d'inscription
mardi 7 janvier 2003
Statut
Membre
Dernière intervention
26 mars 2009
-
Messages postés
29
Date d'inscription
mardi 7 janvier 2003
Statut
Membre
Dernière intervention
26 mars 2009
-
Bonjour,

Lorsque je lis un recordset ADO je reçois le type "_variant_t" pour les TimeStamp (dates et heures).

Or le TimeStamp semble être stocké sous la forme d'un double du genre "38904.835451", qui est un nombre de jours depuis une date de référence (1/1/1800 je crois).

Savez vous comment récupérer les informations: année, mois, jour, heure, minute, seconde en fonction de la date en format Double ? 
(ou alors comment en faire une string affichable c'est pareil...).

j'ai pas mal cherché dans la classe "_variant_t" et "tagVARIANT" pourquoi en mode debug Visual C++ affiche un format de date pour afficher ma variable de type "_variant_t" au lieu d'afficher la valeur double, sans succès !

J'ai cherché sur google, dans les sources cppfrance et sur msdn mais je n'ai pas trouvé la réponse à mon problème.
Je suis en accès ADO sur une base MySQL.

Merci !!!

2 réponses

Messages postés
21042
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
20
SYSTEMTIME  sttm;
_variant_t var;
var = prs->Fields->GetItem((long)4)->Value; // DATE
VariantTimeToSystemTime(var.dblVal, &sttm);

ciao...
BruNews, MVP VC++
Messages postés
29
Date d'inscription
mardi 7 janvier 2003
Statut
Membre
Dernière intervention
26 mars 2009

Punaise j'en reviens pas !!!! mon sauveur !!!
pour un peu t'aurais droit à un gros bisou ! mdr
je plaisante mais là tu me sauuuuuuves !

j'étais déjà en train de réfléchir à comment optimiser une routine
de recherche des années bisextiles...

Raaaaahhh c'est trop bon ! j'ai une date découpée tout propre et tout, le MEGA PIED !!!

Merci BruNews !!!