我无法让表格接受“”或“”并使用默认值。它改为插入NULL。
我在直接输入sql窗口中尝试这些命令。
INSERT INTO test01 VALUES ("", now(), "");
INSERT INTO test01 VALUES ('', now(), '');
但两者都只在第3列中给出了NULL。结构设置为非null,默认值为“yes”。 (不带引号)。
以下是该结构的屏幕截图。您可以看到未检查NULL。 http://garryjones.se/extras/so3.png
答案 0 :(得分:2)
默认值仅在插入/更新否值时有效。如果您明确地将其设置为空字符串( NOT 与NULL
值相同),那么它将在列中以空字符串结尾。除了上面的代码,你应该完全取消INSERT
语句中的列:
INSERT INTO test01 (t1, t2) VALUES ('', now())
答案 1 :(得分:0)
其他已经解释了原因我在这里再添加一点,你也在更新时使用当前时间戳,所以也不需要使用这个列。
$routeParams
答案 2 :(得分:0)
您可以使用DEFAULT关键字:INSERT INTO test01 VALUES ("", now(), DEFAULT);