【发布时间】:2022-01-08 23:53:04
【问题描述】:
我有一个带有时间戳的 CSV 文件,例如 2018-04-04T00:03:04Z。我创建了一个带有时间戳字段的表,并用 CSV 中的数据填充了该表,但生成了一个错误:
日期时间值不正确
我的桌子根本没有坐满;执行选择查询返回 0 行。
我尝试使用str_to_date(date_sale, "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'") ,但它返回空值。
之前我创建了带有日期字段作为字符串的表,一切正常,但现在我需要将此字段转换为时间戳字段以操作日期。我正在使用表格数据导入向导填充表格。
有人可以帮忙吗?
【问题讨论】:
-
Z 表示应包含时区信息。
-
顺便说一句,永远不要将日期/时间数据存储在 varchar 列中。使用正确的日期/时间数据类型!
-
您的列是 varchar 类型。你只需要修改它。
ALTER TABLE nf MODIFY date_sale timestamp。但是你需要在它之前格式化你的日期 -
@jarlh 我尝试用 CET 替换 Z 并再次应用 str_to_date,结果为空值。我已经尝试使用时间戳字段创建表,但无法使用 CSV 文件填充表。
-
可以选择 PHP 吗?是否要将数据转换为当地时间?
标签: mysql sql datetime timestamp