MySQL实际项目中常用的 DDL 模板

 更新时间:2025年12月10日 16:20:24   作者:QAQalone  
本文详细介绍了数据库表的常见操作,包括创建带审计字段和索引的模板、修改表结构(如新增、删除、修改字段)、索引管理(新增、删除普通、唯一索引及联合索引)、外键约束的新增和删除、表结构变更(如重命名表、设置字符集)以及删除表,感兴趣的朋友跟随小编一起看看吧

✅ 一、建表模板(带审计字段 + 索引)

CREATE TABLE `hot_campaign` (
    `id` BIGINT NOT NULL AUTO_INCREMENT COMMENT '主键',
    `campaign_name` VARCHAR(64) NOT NULL COMMENT '活动名称',
    `site` VARCHAR(32) NOT NULL COMMENT '站点',
    `status` TINYINT NOT NULL DEFAULT 1 COMMENT '状态:1启用 0停用',
    `created_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
    `created_by` VARCHAR(16) DEFAULT NULL COMMENT '创建人工号',
    `updated_at` DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
    `updated_by` VARCHAR(16) DEFAULT NULL COMMENT '更新人工号',
    PRIMARY KEY (`id`),
    KEY `idx_site` (`site`),
    KEY `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='营销活动表';

✅ 二、修改表结构(ADD / DROP / CHANGE / MODIFY)

1)新增字段

ALTER TABLE `hot_campaign`
ADD COLUMN `last_updated_staff` VARCHAR(16) DEFAULT NULL COMMENT '最后更新人工号';

2)删除字段

ALTER TABLE `hot_campaign`
DROP COLUMN `last_updated_staff`;

3)修改字段类型(MODIFY)

仅修改类型,不改字段名

ALTER TABLE `hot_campaign`
MODIFY COLUMN `campaign_name` VARCHAR(128) NOT NULL COMMENT '活动名称';

4)修改字段名 + 字段类型(CHANGE)

ALTER TABLE `hot_campaign`
CHANGE COLUMN `status` `campaign_status` TINYINT NOT NULL DEFAULT 1 COMMENT '活动状态';

5)修改字段默认值

ALTER TABLE `hot_campaign`
ALTER COLUMN `status` SET DEFAULT 1;

✅ 三、索引相关(INDEX / UNIQUE / DROP)

1)新增普通索引

ALTER TABLE `hot_campaign`
ADD INDEX `idx_name` (`campaign_name`);

2)新增联合索引

ALTER TABLE `hot_campaign`
ADD INDEX `idx_site_status` (`site`, `status`);

3)新增唯一索引

ALTER TABLE `hot_campaign`
ADD UNIQUE INDEX `uk_site_name` (`site`, `campaign_name`);

4)删除索引

ALTER TABLE `hot_campaign`
DROP INDEX `idx_site_status`;

✅ 四、外键(FOREIGN KEY)

1)新增外键约束

ALTER TABLE `coupon`
ADD CONSTRAINT `fk_coupon_campaign`
    FOREIGN KEY (`campaign_id`)
    REFERENCES `hot_campaign` (`id`)
    ON DELETE CASCADE
    ON UPDATE CASCADE;

2)删除外键

ALTER TABLE `coupon`
DROP FOREIGN KEY `fk_coupon_campaign`;

✅ 五、表结构变更

1)重命名表

RENAME TABLE `hot_campaign` TO `hot_campaign_v2`;

2)设置表的字符集

ALTER TABLE `hot_campaign`
CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

✅ 六、删除表(DROP)

DROP TABLE IF EXISTS `hot_campaign`;

到此这篇关于MySQL实际项目中常用的 DDL 模板的文章就介绍到这了,更多相关mysql ddl模块内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql Out of memory (Needed 16777224 bytes)的错误解决

    mysql Out of memory (Needed 16777224 bytes)的错误解决

    至于我改的这几个值是不是正确的解决方法,目前还不知道。先贴出来
    2012-07-07
  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误的解决办法

    MySQL安装出现The configuration for MySQL Server 8.0.28 has

    这篇文章主要给大家介绍了MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误的解决办法,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • MySQL 8.0数据字典缓存管理机制解析

    MySQL 8.0数据字典缓存管理机制解析

    MySQL 8.0中的数据字典,通过对两级缓存的逐级访问,以及精妙的对缓存未命中情况的处理方式,有效的加速了在不同场景下数据库对DD的访问速度,显著的提升了数据库访问元数据信息的效率,这篇文章主要介绍了解读MySQL 8.0数据字典缓存管理机制,需要的朋友可以参考下
    2024-07-07
  • mysql grants小记

    mysql grants小记

    grant命令是对mysql数据库进行用户创建,权限或其他参数控制的强大的命令,官网上介绍它就有几大页,要用精它恐怕不是一日半早的事情,权宜根据心得慢慢领会吧!
    2011-05-05
  • MySQL普通表如何转换成分区表

    MySQL普通表如何转换成分区表

    分表和表分区的目的就是减少数据库的负担,提高数据库的效率,通常点来讲就是提高表的增删改查效率,下面这篇文章主要给大家介绍了关于MySQL普通表如何转换成分区表的相关资料,需要的朋友可以参考下
    2022-05-05
  • mysql之数字函数的具体使用

    mysql之数字函数的具体使用

    本文主要介绍了mysql之数字函数的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-07-07
  • MySQL如何计算连续登录天数

    MySQL如何计算连续登录天数

    这篇文章主要介绍了MySQL如何计算连续登录天数,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • 关于Mysql update修改多个字段and的语法问题详析

    关于Mysql update修改多个字段and的语法问题详析

    这篇文章主要给大家介绍了关于mysql update修改多个字段and的语法问题的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • mysql中binlog_format模式与配置详细分析

    mysql中binlog_format模式与配置详细分析

    这篇文章主要介绍了mysql中binlog_format模式与配置的相关内容,详细介绍了binlog的三种格式与SBR、 RBR 两种模式各自的优缺点,需要的朋友可以参考。
    2017-10-10
  • MySQL5.7.44-winx64版本Windows Server下载安装过程

    MySQL5.7.44-winx64版本Windows Server下载安装过程

    本文详细介绍了如何下载、安装和配置MySQL 5.7.44的步骤,包括设置环境变量、修改配置文件和密码,以及如何修改默认端口
    2025-12-12

最新评论