我猜它需要是这样的:

CONVERT(CHAR(24), lastModified, 101)

但是我不确定第三个参数的正确值。

谢谢!


好吧,我正在尝试编写一个脚本来将我的 sql server 数据库复制到 sqlite 文件,该文件被下载到一个air应用程序,然后将数据同步到另一个 sqlite 文件。我在约会方面遇到了很多麻烦。如果我选择空中日期并尝试插入它,它会失败,因为它的格式不正确......即使它是一个有效的开始日期。我想我应该尝试使用 unix 时间进行实验,因为这是迄今为止唯一有效的方法。我正在考虑将它们保留为 varchar 因为无论如何我都不按它们排序。

有帮助吗?

解决方案 3

我最终在 MS SQL 中使用了格式 120:

convert(char(24), lastModified, 120)

每次我需要在 SQLite 中选择一个日期以用于非显示目的时,我都会使用:

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

现在我只需要一种可读/友好的方式来向用户显示日期!

编辑:接受答案给任何向我展示如何从 sqlite 很好地显示日期的人;p

其他提示

最后一个纪元是 1970 GMT?

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

也可以看看 纪元日期

sqlite> 选择日期时间();
2011-01-27 19:32:57

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

参考:
(日期时间函数)[http://sqlite.org/lang_datefunc.html]

定义“最后一个纪元”。这接近吗?

选择强制转换(最后修改为整数)

如果将它们存储为 varchar,请将它们存储为 YYYYMMDD。这样,如果您愿意,您可以稍后对它们进行排序。

SQL Server 只有 2 种故障安全日期格式

ISO = YYYYMMDD,运行此命令可以看到

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

ISO8601 = yyyy-mm-dd Thh:mm:ss:mmm(无空格) 运行此命令可以看到

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

为了了解有关日期如何存储在 SQL Server 中的更多信息,我写了 SQL Server 中如何存储日期?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top