【发布时间】:2020-01-07 13:15:54
【问题描述】:
我们将日期时间存储在 MySQL 数据库的列中,格式为 TEXT,但我们的日期时间应该如下所示:
'xxxx-xx-xx 00:00:00'
时间被删除或不显示在我们的日期时间,因此我们的日期时间,在那个特定的时间,只包含日期:
'xxxx-xx-xx'
我们首先要弄清楚为什么会发生这种情况,但现在我们需要编辑每一行,并确保日期时间也显示时间。我们已尝试使用此查询更改受影响的行:
UPDATE table SET TIME(col_datetime) = '00:00:00' WHERE LENGTH(TIME(col_datetime)) = 0;
上述查询应更新 col_datetime 的日期时间,其中时间长度为 0。不幸的是,我们收到错误,无法运行查询。这是错误:
您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 2 行的 '(time_start) = '00:00:00' WHERE LENGTH(TIME(time_start)) = 0' 附近使用正确的语法
如果没有显示时间,我们如何更改日期时间的时间?
【问题讨论】:
-
列
col_datetime的数据类型是什么? -
数据类型为 TEXT @GMB
-
数据类型是 TEXT... 哎哟!
-
听起来我应该立即更改此设置?我们正在处理重要且有价值的数据
-
我应该立即改变这个吗?... 是的,你应该。有适当的日期/日期时间类型
标签: mysql sql date datetime sql-update