mysql中null default null和default null之间的区别?

Nit*_*mar 7 mysql sql create-table

最近我在mysql中遇到了一个新问题.我正准备创建一个新表col1 TIMESTAMP DEFAULT NULL,但在创建时给了我错误列无效的默认值.但是当我尝试时NULL,那张桌子就被创造了.

我想知道上面两种语法之间有什么区别.在列中的一些插入空值中,我也更早地遇到了这个问题.

任何人都可以解释这个问题,即版本特定的问题或与mysql的其他问题.

Thi*_*ilo 11

第一个"null"表示该列可以为空,即接受null.第二个"null"(默认情况下)是默认值.

如果您只有默认值,但使列拒绝为空,则不能使用该默认值.

(但我的印象是,如果你既NULL没有指定NULL列也没有列可空,那么你看到的有点令人困惑).