Delphi + SQLite et IPhone [Résolu]

Signaler
Messages postés
8
Date d'inscription
vendredi 3 janvier 2003
Statut
Membre
Dernière intervention
11 octobre 2011
-
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
-
Bonjour,

Je lis une sauvegarde de mon IPhone avec SQLite, jusqu'à la tout va bien (Nom, N° Tél...), mais le champ DATE me retourne un Integer, style 1317646435, lorsque j'utilise la fonction DateTimeToStr celle-ci ne me retourne pas la date escomptée. Quelqu'un aura-t-il déjà essayé ?

Le format date SQLite ou de l'IPhone diffère-t-il de celui de Delphi ?

Merci,

Système Windows XP avec Delphi 7

4 réponses

Messages postés
4715
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
12
Voilà le lien directe pour les fonctions :

FONCTIONS SQLLITE


cantador
Messages postés
4715
Date d'inscription
dimanche 26 février 2006
Statut
Modérateur
Dernière intervention
27 mars 2018
12
Bonjour,

Le format de stockage des dates en SQLLite est :

Date and Time Datatype

SQLite does not have a storage class set aside for storing dates and/or times. Instead, the built-in Date And Time Functions of SQLite are capable of storing dates and times as TEXT, REAL, or INTEGER values:

* TEXT as ISO8601 strings ("YYYY-MM-DD HH:MM:SS.SSS").
* REAL as Julian day numbers, the number of days since noon in Greenwich on November 24, 4714 B.C. according to the proleptic Gregorian calendar.
* INTEGER as Unix Time, the number of seconds since 1970-01-01 00:00:00 UTC.


Donc, il te faut tester si : le nombre est soit :
- un total de secondes
- soit un nombre de jours

Tu disposes aussi à l'intérieur du SQL, de fonctions de conversions de date..
SQLite fonctions

A toi, de choisir la formule la plus élégante..

cantador
Messages postés
8
Date d'inscription
vendredi 3 janvier 2003
Statut
Membre
Dernière intervention
11 octobre 2011

Merci pour ta réponse Cantador. Je m'en suis sortie avec la fonction DateTimeToStr et EncodeDate, le calendrier de l'IPhone commence le 01/01/1970 (Attention, aussi au 01/01/2001 pour certains champs) et non pas le 30/12/1899 comme en Delphi 7. Encore merci pour m'avoir répondu .


@ plus
FML
Messages postés
4580
Date d'inscription
samedi 19 janvier 2002
Statut
Modérateur
Dernière intervention
9 janvier 2013
27
Bonsoir,

Tiens, tiens, le 01/01/1970 n'évoque rien pour vous ?
Rien que cela me dit que ça sent le TimeStamp UNIX !
Delphi sait gérer les timestamp au travers des classes TTimeStamp et TSQLTimeStamp.


May Delphi be with you

Pensez à cliquer sur Réponse acceptée lorsque la réponse vous convient.