sqlite type de données datetime avec l'iphone NSdate?
Est-il un moyen de sqlite pour enregistrer automatiquement un horodatage dans la table chaque fois qu'un dossier a été créé, que je peux ensuite saisir et enregistrer en tant que NSDate dans mon application?
Ou devrais-je plutôt à créer l'objet NSdate à l'heure actuelle dans mon application iphone, puis l'insérer dans la base de données. Si donc? Quelle colonne le type de données d'être pour le moment? un DATETIME?
OriginalL'auteur | 2009-06-02
Vous devez vous connecter pour publier un commentaire.
Ce que je fais, c'est l'utilisation de sqlite est current_timestamp (qui ressemble à quelque chose comme ceci: 2009-06-16 12:11:24). Pour ce faire, il suffit de régler le type de ligne de votre qslite table à
Puis utiliser une requête SQL comme ceci:
en ignorant la date, de sorte qu'il va obtenir automatiquement la valeur de temps en cours.
Puis de convertir cette NSDate vous pouvez utiliser un NSDateFormatter comme ceci:
et maintenant vous avez cette date comme un objet NSDate. Il suffit de ne pas oublier de libérer la NSDateFormatter, nous avons alloué 🙂
OriginalL'auteur Dimitris
Il n'y a pas de
TIMESTAMP
type de données que vous pouvez utiliser dans SQLite, de sorte que vous aurez à insérer manuellement le moment où vous faites votreINSERT
. J'utilise leINTEGER
le type de données dans la base de données, et de les convertir monNSDate
en tant que tel:Et le sortir de la DB:
OriginalL'auteur pixel
J'aime utiliser l'sqlite julianday() de la fonction, comme:
Ce serait d'insérer une valeur à virgule flottante dans foo.currentDate.
Vous pouvez également trouver certains détails de cette question/réponse utile.
Comment obtenir une colonne datetime dans SQLite avec Objective-C
OriginalL'auteur xyzzycoder