首页 > 解决方案 > 默认值为0的mysql-workbench列行不是NULL?

问题描述

我有一个包含以下列的数据库:clicks int(11) DEFAULT NULL.

如果我给这个列一个NULL增量的默认值:

UPDATE table SET clicks = clicks + 1 WHERE id=:id");

不起作用,但是当我手动将其更改为 0 时,一切正常。

我怎样才能给列的默认值0

顺便说一句,如果我在 mysql 工作台中输入 0 作为默认值,无论如何,数据库仍然显示 NULL。

我错过了什么?

标签: phpmysqlmysql-workbench

解决方案


你可以试试下面的查询。

UPDATE table SET clicks = ifnull(clicks,0) + 1 WHERE id=:id");

此外,您可以尝试更改您的表。

  ALTER TABLE table
  CHANGE COLUMN clicks clicks INT DEFAULT 0; 

推荐阅读