Formato data T-Sql per secondi dall'ultima epoca/formattazione per input sqlite

StackOverflow https://stackoverflow.com/questions/11200

  •  08-06-2019
  •  | 
  •  

Domanda

Immagino che debba essere qualcosa del tipo:

CONVERT(CHAR(24), lastModified, 101)

Tuttavia non sono sicuro del valore corretto per il terzo parametro.

Grazie!


Bene, sto provando a scrivere uno script per copiare il mio db del server SQL in un file SQLite, che viene scaricato in un'app Air, che quindi sincronizza i dati in un altro file SQLite.Ho un sacco di problemi con le date.Se seleziono una data in onda e provo a inserirla, l'operazione fallisce perché non è nel formato corretto...anche se fosse una data valida tanto per cominciare.Ho pensato di provare a sperimentare con Unix Time poiché è l'unica cosa che ha funzionato finora.Sto pensando di lasciarli come varchar perché comunque non li smisto.

È stato utile?

Soluzione 3

Ho finito con l'utilizzare il formato 120 in MS SQL:

convert(char(24), lastModified, 120)

Ogni volta che avevo bisogno di selezionare una data in SQLite per scopi non di visualizzazione ho usato:

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

Ora ho solo bisogno di un modo leggibile e intuitivo per visualizzare la data all'utente!

modificare:la risposta accetta va a chi mi mostra come visualizzare bene la data da sqlite; p

Altri suggerimenti

L'ultima epoca è quando 1970 GMT?

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

Guarda anche Data dell'epoca

sqlite> seleziona data/ora();
2011-01-27 19:32:57

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

RIFERIMENTO:
(Funzioni data e ora)[http://sqlite.org/lang_datefunc.html]

Definire "ultima epoca".Questo si avvicina?

Seleziona Trasmetti (lastModified As Integer)

Se li memorizzi come varchar, memorizzali come AAAAMMGG.In questo modo puoi ordinarli in seguito, se lo desideri.

Il server SQL ha solo 2 formati di data failsafe

ISO = AAAAMMGG, esegui questo per vederlo

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

ISO8601 = aaaa-mm-gg Thh:mm:ss:mmm(senza spazi) esegui questo per vederlo

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

Per saperne di più su come vengono archiviate le date nel server SQL, ho scritto Come vengono archiviate le date in SQL Server?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top