Cred că trebuie să fie ceva de genul:
CONVERT(CHAR(24), lastModified, 101)
Cu toate acestea nu sunt sigur de valoarea corectă pentru al treilea parametru.
Mulțumiri!
Ei bine, încerc să scriu un script pentru a copia serverul meu sql db într-un fișier sqlite, care este descărcat într-o aplicație aeriană, care apoi sincronizează datele într-un alt fișier sqlite. Am o mulțime de probleme cu întâlnirile. Dacă aleg o dată în aer și încerc să-l introduc, acesta nu reușește deoarece nu este în formatul corect ... chiar dacă a fost o dată validă pentru început. M-am gândit că voi încerca să experimentez cu timpul unix, din moment ce acesta este singurul lucru care a funcționat până acum. Mă gândesc să-i las pe ei ca varchar, pentru că eu nu le sortez oricum.
Ultima epocă este când 1970 GMT?
SELECT DATEDIFF(s,'19700101 05:00:00:000',lastModified)
See also Epoch Date
Serverul SQL are numai 2 formate de date de tip "fail-safe"
ISO = YYYYMMDD, executați acest lucru pentru a vedea acest lucru
select convert(varchar(10),getdate(),112)
ISO8601 = aaaa-mm-dd Thh: mm: ss: mmm (fără spații) executați acest lucru pentru a vedea că
select convert(varchar(30),getdate(),126)
To learn more about how dates are stored in SQL server I wrote How Are Dates Stored In SQL Server?
Am terminat folosind formatul 120 în MS SQL:
convert(char(24), lastModified, 120)
De fiecare dată când aveam nevoie de o dată selectată în SQLite pentru scopuri non-afișare, am folosit:
strftime(\"%Y-%m-%d %H:%M:%S\", dateModified) as dateModified
Acum am nevoie doar de o modalitate lizibilă de a afișa data utilizatorului!
edita: accepta raspunsul merge oricui mi-ar arata cum sa afisez data frumos din sqlite;