J'essaye d'insérer une valeur datetime dans une base de données SQLite . Cela semble être un succès, mais lorsque j'essaye de récupérer la valeur, il y a une erreur:
<Impossible de lire les données>
Les instructions SQL sont:
create table myTable (name varchar(25), myDate DATETIME)
insert into myTable (name,mydate) Values ('fred','jan 1 2009 13:22:15')
La façon de stocker des dates dans SQLite est:
SQLite a également des fonctions de date et d'heure que vous pouvez utiliser. Voir SQL tel que compris par SQLite, fonctions de date et d'heure .
la source
.xxxxxx
ici dans la syntaxe de @ TorValamo =.SSS
=% f dans la documentation SQLite, c'est à dire des fractions de seconde.Vous devez changer le format de la chaîne de date que vous fournissez afin de pouvoir l'insérer à l'aide de la fonction STRFTIME. Raison d'être, il n'y a pas d'option pour l'abréviation d'un mois:
L'alternative est de formater la date / heure dans un format déjà accepté:
Référence: Fonctions de date et d'heure SQLite
la source
Utilisez
CURRENT_TIMESTAMP
quand vous en avez besoin, au lieu de OFNOW()
(qui est MySQL)la source
Lisez ceci : 1.2
Date
et le meilleur type de données de type de données heure pour stocker la date et l'heure est:TEXT
le meilleur format est:yyyy-MM-dd HH:mm:ss
Alors lisez cette page; il est préférable d'expliquer la date et l'heure
SQLite
. J'espère que cela vous aiderala source
Ce n'est peut-être pas la méthode la plus populaire ou la plus efficace, mais j'ai tendance à renoncer aux types de données forts dans SQLite car ils sont tous essentiellement vidés sous forme de chaînes de toute façon.
J'ai déjà écrit un fin wrapper C # autour de la bibliothèque SQLite (lors de l'utilisation de SQLite avec C #, bien sûr) pour gérer les insertions et les extractions vers et depuis SQLite comme si je traitais des objets DateTime.
la source