添加当前时间戳的日期时间列甚至是NULL

时间:2014-08-11 03:54:08

标签: mysql

我有登录表:

tbl:login

name          type        Allow Null

id          varchar(36)     Yes
coy_id      varchar(36)     Yes
client_id   varchar(36)     Yes
logindt     Datetime        Yes
logoutdt    Datetime        Yes

当我插入时:

INSERT INTO login (id, coy_id, client_id, logindt, logoutdt) 
VALUES ('7E6B6C24-20AF-439C-B3CD-26F6425881C9', '11111111-1111-1111-1111-111111111111', '12341234-1234-1234-1234-123412341234', '2014-07-30 13:47:54.727', NULL);`

logoutdt添加当前时间戳,为什么? image

*更新:  enter image description here

更新2 更新查询正常

UPDATE login SET logoutdatetime= NULL WHERE id ='7e6b6c24-20af-439c-b3cd-26f6425881c9';

3 个答案:

答案 0 :(得分:0)

因为你的表声明。

创建表时需要声明logoutdt并登录dt以使DEFAULT为NULL,否则它将放入CURRENT TIMESTAMP

答案 1 :(得分:0)

尝试此查询,通过将column的默认值设置为null:

ALTER TABLE login MODIFY COLUMN logoutdatetime DATETIME DEFAULT NULL;

更新:检查此Demo。它按你的意愿工作。

答案 2 :(得分:0)

  

您的表结构存在一些问题,请参阅SQLFiddle Here。它对我来说很好,为什么不在你的情况下工作。请检查正确的表格结构并修改所需的更改。