-- 在 MySQL 中,DEFAULT 关键字用于为列指定默认值。如果在插入数据时没有为该列提供值,
-- 则会自动使用默认值。
-- 示例 1:创建一个包含默认值的表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
age INT DEFAULT 18, -- 如果未指定年龄,默认值为 18
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP -- 如果未指定创建时间,默认为当前时间
);
-- 插入数据时不指定 age 和 created_at 列
INSERT INTO users (name) VALUES ('Alice');
-- 查询插入的数据
SELECT * FROM users;
-- 结果:
-- +----+-------+------+---------------------+
-- | id | name | age | created_at |
-- +----+-------+------+---------------------+
-- | 1 | Alice | 18 | 2023-10-04 12:34:56 |
-- +----+-------+------+---------------------+
-- 示例 2:使用 ALTER TABLE 修改现有表以添加默认值
ALTER TABLE users
MODIFY email VARCHAR(100) DEFAULT 'no-reply@example.com';
-- 插入数据时不指定 email 列
INSERT INTO users (name) VALUES ('Bob');
-- 查询插入的数据
SELECT * FROM users;
-- 结果:
-- +----+-------+------+---------------------+------------------------+
-- | id | name | age | created_at | email |
-- +----+-------+------+---------------------+------------------------+
-- | 2 | Bob | 18 | 2023-10-04 12:35:00 | no-reply@example.com |
-- +----+-------+------+---------------------+------------------------+
下一篇:mysql 创建用户并授权
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站