你如何使一个字段始终默认为mySQL中的值?

时间:2011-09-13 18:17:25

标签: mysql

我有一个文本字段(列)。

每次创建记录时,我都希望这个名为“type”的特殊列默认为每个新记录的“FC”。

我无法让它发挥作用。

enter image description here

3 个答案:

答案 0 :(得分:1)

在create table语句后尝试此操作:

ALTER TABLE TableName MODIFY type columnType Default 'FC';

这样,每次插入新行时,type都将具有值'FC',除非另有说明。

答案 1 :(得分:0)

您的查询是否将该列作为空值插入?如果是这样,那可能就是问题所在。

答案 2 :(得分:0)

我能想到的唯一解决方案是trigger

手册中和我头顶的一个未经测试的快速示例:

  CREATE TRIGGER ins_yourtable AFTER INSERT ON yourtable
->FOR EACH ROW SET type = 'FC';

如果您可以控制所有插入,您也可以在插入时跳过该列:它们将获得默认值。但是当值被某些(甚至是')填充时,它将获得该值,因此您不会强制它。