上一篇讲了库的操作这一篇来系统掌握 MySQL **表table**的完整操作创建表、查看表结构、修改表结构、删除表。特别是ALTER TABLE的各种用法是日常开发改动表结构的高频操作一定得记牢。一、创建表MySQL 使用CREATE TABLE语句创建表语法如下CREATETABLEtable_name(field1 datatype,field2 datatype,field3 datatype)characterset字符集collate校验规则engine存储引擎;语法说明field表示列名datatype表示列的类型如int、varchar、datecharacter set 字符集如果不指定则以所在数据库的字符集为准collate 校验规则如果不指定则以所在数据库的校验规则为准engine 存储引擎决定表在磁盘上的存储方式如MyISAM、InnoDB。二、创建表案例createtableusers(idint,namevarchar(20)comment用户名,passwordchar(32)comment密码是32位的md5值,birthdaydatecomment生日)charactersetutf8engineMyISAM;comment用来给字段添加注释方便后来者理解字段含义。不同的存储引擎建表生成的文件不一样上面users表用的是MyISAM引擎在数据目录下会生成三个文件文件含义users.frm表结构users.MYD表数据users.MYI表索引打开数据目录例如C:\ProgramData\MySQL\MySQL Server 5.7\Data\test1可以看到名称类型大小db.optOption 文件1 KBperson.frmFRM 文件9 KBperson.ibdIBD 文件96 KBusers.frmFRM 文件9 KBusers.MYDMYD 文件0 KBusers.MYIMYI 文件1 KB 备注如果改成InnoDB引擎创建表就不会有.MYD/.MYI而是.frm表结构.ibd表数据和索引一起存两个文件。这也是 InnoDB 和 MyISAM 的直观区别。三、查看表结构desc表名;以users表为例mysql desc users; -------------------------------------------------- | Field | Type | Null | Key | Default | Extra | -------------------------------------------------- | id | int(11) | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | --------------------------------------------------各列含义列名含义Field字段名字Type字段类型Null是否允许为空Default默认值Extra扩充信息如自增四、修改表实际开发中经常要调整表结构改字段名、改字段大小、改类型、改字符集、改存储引擎甚至增删字段。这时就需要ALTER TABLE。4.1 ALTER TABLE 通用语法-- 添加字段ALTERTABLEtablenameADD(columndatatype[DEFAULTexpr][,columndatatype]...);-- 修改字段修改类型/大小ALTERTABLEtablenameMODIFY(columndatatype[DEFAULTexpr][,columndatatype]...);-- 删除字段ALTERTABLEtablenameDROP(column);4.2 实战案例先给users表插入两条数据mysqlinsertintousersvalues(1,a,b,1982-01-04),(2,b,c,1984-01-04);① 添加一个字段保存图片路径altertableusersaddassetsvarchar(100)comment图片路径afterbirthday;after birthday表示把新字段插在birthday之后。查看结果——新增字段对原表已有数据没有影响mysql desc users; --------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int(11) | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | | assets | varchar(100) | YES | | NULL | | --------------------------------------------------- mysql select * from users; --------------------------------------- | id | name | password | birthday | assets | --------------------------------------- | 1 | a | b | 1982-01-04 | NULL | -- 原数据仍然存在 | 2 | b | c | 1984-01-04 | NULL | ---------------------------------------② 修改 name 字段长度altertableusersmodifynamevarchar(60);结果name从varchar(20)变成varchar(60)。③ 删除 password 字段altertableusersdroppassword;⚠️删除字段一定要小心字段和它对应的列数据都会一起消失无法恢复。删除后结构--------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int(11) | YES | | NULL | | | name | varchar(60) | YES | | NULL | | | birthday | date | YES | | NULL | | | assets | varchar(100) | YES | | NULL | | ---------------------------------------------------④ 修改表名altertableusersrenametoemployee;to可以省略等价于alter table users rename employee;。改名后数据不丢失mysql select * from employee; ----------------------------- | id | name | birthday | assets | ----------------------------- | 1 | a | 1982-01-04 | NULL | | 2 | b | 1984-01-04 | NULL | -----------------------------⑤ 修改字段名altertableemployee change name xingmingvarchar(60);⚠️ 用change修改字段名时新字段需要给出完整定义类型必须带上不能只写名字。结果--------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int(11) | YES | | NULL | | | xingming | varchar(60) | YES | | NULL | | | birthday | date | YES | | NULL | | | assets | varchar(100) | YES | | NULL | | ---------------------------------------------------五、删除表语法DROP[TEMPORARY]TABLE[IFEXISTS]tbl_name[,tbl_name]...;示例droptablet1;⚠️ 删除表是不可逆操作表结构和数据都会一并删除。IF EXISTS加上可避免表不存在时报错一次性可删除多张表用逗号分隔。六、总结操作命令创建表create table 表名(字段 类型 ...) engine存储引擎;查看表结构desc 表名;添加字段alter table 表名 add 字段 类型 [after 某字段];修改字段类型/大小alter table 表名 modify 字段 新类型;修改字段名alter table 表名 change 旧名 新名 完整类型;删除字段alter table 表名 drop 字段;修改表名alter table 旧表名 rename to 新表名;删除表drop table [if exists] 表名;核心一句话建表选好存储引擎MyISAM 三文件 vs InnoDB 两文件改表用ADD增、MODIFY改类型、CHANGE改名字、DROP删字段删除类操作务必谨慎。如果这篇对你有帮助欢迎点赞收藏。本系列持续更新 MySQL 操作。有疑问欢迎评论区交流。
企业数字化 ERP 产品动态
相关推荐
揭秘InnoDB 自增主键插入延迟与页分裂机制 主键自增明明是顺序插入,为什么还会偶尔“卡”一下?高并发往一张 InnoDB 表里 INSERT,主键是自增的。监控上经常能看到这样一条曲线:平时 QPS 挺稳,但隔一段时间延迟就会猛地翘一下,QPS 跟着掉一截… · 2026/9/27 21:44:25
基于Claude Skill技术实现文章审查:SKILL.md配置与验证指南 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 21:44:19
CTF为什么总是做不出来?Web、密码学、逆向三大题型新手解题思路总结 引言
CTF(Capture The Flag,夺旗挑战)是网络安全领域最经典的竞赛形式之一,参赛者需要在短时间内从零开始发现并利用安全漏洞,获得目标服务器上的 Flag(通常是一个隐藏的字符串)。这项赛事自 19… · 2026/9/27 22:15:48
Cursor Pro 配 TaoToken:settings.json 骨架与报错排查 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/27 22:15:48
有区域名和主机怎么做网站2026最新实操避坑指南 有区域名和主机怎么做网站2026最新实操避坑指南 网站做好了没人访问,这是很多刚拿到域名和主机的站长最头疼的事。别急,2026年的搜索环境变了,光有站不够,得让搜索引擎“看懂”你。今天咱不整虚的,直接拆解从域名解析到SEO落地的完整链路,帮… · 2026/9/27 22:15:48
数据库中的索引 一、索引到底解决什么问题?先看没有索引时,数据库怎么查数据。假设有一张 users 表,存了 100 万条用户记录。执行:SELECT * FROM users WHERE username zhangsan;数据库只能从第 1 行开始,逐行扫描,直到找… · 2026/9/27 22:15:42
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01