MySQL中怎么给字段设置默认值?
了解默认值
MySQL的默认值是可以在创建表时就设定的,如果没有显式指定默认值,则MySQL将会自动采用默认值。当我们往表中插入不完整的数据记录时,MySQL会使用默认值代替缺失的数据列。
设置默认值
MySQL中设置默认值非常简单,只要在创建表的时候在列的定义后加上 DEFAULT 'value' 就行了。其中value就是该列的默认值。
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50),
gender VARCHAR(10) DEFAULT 'unknown',
age INT,
address VARCHAR(100),
email VARCHAR(50) DEFAULT 'unknown'
);
这样就给gender和email这两个列设置了默认值,在插入数据时即使不填这两个字段也不会报错。
修改默认值
有时候,我们需要修改已经存在的某些字段的默认值。这时候可以使用 ALTER TABLE 语句修改表的结构,增加或修改默认值。
ALTER TABLE students
MODIFY COLUMN age INT DEFAULT 18;
这个语句将学生表中age字段的默认值修改为18。
取消默认值
既然可以设定默认值,那么是否也可以取消默认值呢?使用 ALTER TABLE 语句也可以。只需要将 DEFAULT 后面的值设为 NULL 就可以将默认值取消。
ALTER TABLE students
ALTER COLUMN email DROP DEFAULT;
这个语句将学生表中email字段的默认值取消。
总结
在MySQL中,设置、修改、取消默认值都是非常简单的。使用 DEFAULT 关键字加值就可以设置,使用 ALTER TABLE 语句加上 MODIFY 或 ALTER COLUMN 就可以修改或取消默认值。
为了方便MySQL的数据处理和查询,建议在创建表时都为每个字段指定一个合适的默认值,尤其是在插入数据时需要使用自动插入默认值的情况下。