oceanbase 存储Datetime类型为什么会出现毫秒 如何去掉

7e29df45d970601a6f266b5453d6467b

5 个赞

用datetime就行,你是不是用的datetime(3)?

CREATE TABLE `t_date` (
  `id` int(11) DEFAULT NULL,
  `date1` datetime(6) DEFAULT NULL,
  `date2` datetime DEFAULT NULL
);

insert into t_date(2,now(),now());
select * from t_date;
+------+----------------------------+---------------------+
| id   | date1                      | date2               |
+------+----------------------------+---------------------+
|    2 | 2026-01-28 15:20:59.000000 | 2026-01-28 15:20:59 |
+------+----------------------------+---------------------+


3 个赞

1 个赞


不知道啥原因都插不进去是版本的问题吗?

1 个赞
insert into t_date values(2,now(),now());

少了个values

2 个赞

你用命令行去测。你这个有可能是工具展示的问题。

2 个赞


奇怪了 找不到原因

1 个赞

那就是你这个客户端工具的问题了。用的啥工具?换个工具看看

2 个赞

确实是显示的问题

1 个赞

是工具的问题,用Oracle时,用不同的工具显示的也不一样

2 个赞

datetime还能指定参数,涨知识了

常见的好像都是datetime(6),之前遇到过,有影响。里面的数字表示精度

改成datetime即可

了解下

写得很详细