允许 NULL 值的创建列,默认值设置为 NOT NULL。

11

我想在我的表中创建一个允许为空但默认为空(而不是null)的列。

ALTER TABLE {TABLENAME} 
ADD {COLUMNNAME} {TYPE} DEFAULT '';

这好像不起作用,有什么想法吗?

谢谢!


你指定的是哪种类型?当使用varchar时,你的查询在MySql上对我有效。 - jmacinnes
之前使用的是text。我会尝试使用varchar。 - rpophessagr
1
你看到了哪些症状?你是如何向表中插入数据的? - Jens Mühlenhoff
2个回答

21

你试过了吗

ALTER TABLE table_name ADD column_name VARCHAR(20) NULL DEFAULT '';

0
如果所有其他方法都失败了,
CREATE TRIGGER trigger_tablename_columnname
  BEFORE INSERT ON tablename
  FOR EACH ROW SET NEW.columnname = IFNULL(NEW.columnname, '')

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接