Ik zit met het volgende probleem: ik wil vanuit DELPHI 7 via een ODBC connectie een DATETIME field uit een MS SQL 2000 database halen, maar krijg niet de milliseconden in delphi.
(en voor de volledigheid: mijn OS is Win 2000 SP4)
Ik heb nu deze transform-functie
en die roep ik aan met
Maar het probleem zit hem in dat ik in de OCIH (ODBC Call-Level Interface Header) niet kan vinden hoe ik milliseconden kan verkrijgen. Ik moet deze OCIH gebruiken, omdat de functies Col**ByName resp. OCIH.TDate en OCIH.TTime retourneren.
Heeft er iemand een oplossing voor hoe ik dus een datum/tijd veld uit de DB INCLUSIEF milliseconden kan ophalen in Delphi?
(en voor de volledigheid: mijn OS is Win 2000 SP4)
Ik heb nu deze transform-functie
Delphi:
1
2
3
4
5
| function SQLDateTimeToDelphi( SQLDate: OCIH.TDate; SQLTime: OCIH.TTime ): TDateTime; begin Result := EncodeDateTime( sqldate.year, sqldate.month, sqldate.day, sqltime.hour, sqltime.minute, sqltime.second, 0); end; |
en die roep ik aan met
Delphi:
1
2
3
4
5
6
7
8
| var insertedTime : TDateTime; var ODBCquery1 : THstmt; with ODBCquery1 do begin insertedTime := SQLDateTimeToDelphi( ColDateByName['insertedTime'], ColTimeByName['insertedTime'] ); end |
Maar het probleem zit hem in dat ik in de OCIH (ODBC Call-Level Interface Header) niet kan vinden hoe ik milliseconden kan verkrijgen. Ik moet deze OCIH gebruiken, omdat de functies Col**ByName resp. OCIH.TDate en OCIH.TTime retourneren.
Heeft er iemand een oplossing voor hoe ik dus een datum/tijd veld uit de DB INCLUSIEF milliseconden kan ophalen in Delphi?
Wie nooit tijd heeft, kan er niet mee omgaan.