2008-08-14 8 views
1

Je suppose que ce doit être quelque chose comme:format de date T-Sql pour les secondes depuis la dernière époque/mise en forme pour l'entrée sqlite

CONVERT(CHAR(24), lastModified, 101) 

Cependant, je ne suis pas sûr de la bonne valeur pour le troisième paramètre .

Merci!


Eh bien, je suis en train d'écrire un script pour copier mon serveur sql db dans un fichier SQLite, qui est téléchargé à une application d'air, ce qui permet de synchroniser ensuite les données vers un autre fichier SQLite. J'ai beaucoup de problèmes avec les dates. Si je sélectionne une date dans l'air et essaie de l'insérer, elle échoue parce qu'elle n'est pas dans le bon format ... même si c'était une date valide pour commencer. J'ai pensé que j'essaierais d'expérimenter avec le temps d'unix puisque c'est la seule chose qui a fonctionné jusqu'ici. Je considère juste les laissant comme varchar parce que je ne trierai pas par eux de toute façon.

Répondre

1

I enroulé format à l'aide de 120 en MS SQL:

convert(char(24), lastModified, 120) 

Chaque fois que je devais une sélection d'une date à SQLite à des fins non-affichage je:

strftime(\"%Y-%m-%d %H:%M:%S\", dateModified) as dateModified 

Maintenant, je juste besoin d'un lisible/convivial moyen d'afficher la date à l'utilisateur!

modifier: accepter réponse va à celui qui me montre comment afficher la date bien de SQLite, p

+0

Défi accepté: Pas tout à fait sûr ce que vous entendez par "afficher gentiment", donc je suppose que vous voulez dire ... – Noah

+0

pas tout à fait sûr de ce que j'avais besoin de cela car il est de 2 ans et demi – Shawn

0

Définir "dernière époque". Est-ce que cela se rapproche?

Sélectionnez Cast (lastModified As Integer)

2

époque Dernière est quand 1970 GMT?

SELECT DATEDIFF(s,'19700101 05:00:00:000',lastModified) 

Voir aussi Epoch Date

0

Si vous les stocker sous forme varchar, les stocker comme AAAAMMJJ. De cette façon, vous pouvez trier par eux plus tard si vous le souhaitez.

0

serveur SQL ne dispose que de deux formats de date failsafe

ISO = AAAAMMJJ, lancer pour voir que

select convert(varchar(10),getdate(),112) 

ISO8601 = aaaa-mm-jj Thh: mm: ss: mmm (sans espace) lancer pour voir que

select convert(varchar(30),getdate(),126) 

pour en savoir plus sur la façon dont les dates sont stockées dans le serveur SQL que j'ai écrit How Are Dates Stored In SQL Server?

2

sqlite>datetime select();
2011-01-27 19:32:57

sqlite>select strftime ('% Y-% m-% d% H:% M:% S', 'maintenant');
2011-01-27 19:33:57

RÉFÉRENCE:
(Fonctions de date et heure) [http://sqlite.org/lang_datefunc.html]

Questions connexes