新闻详情

新闻详情

首页 / 资讯中心 / 详情

MySQL数据库基础(5):表的操作

发布时间:2026/10/1 9:54:31来源:尧图网络
MySQL数据库基础(5):表的操作
雨落在了我的手上个人主页个人仓库Gitee仓库❄️个人专栏JaveSe C语言 C语言数据结构Java数据结构MySQL数据库基础 人生格言无人扶我青云志我自踏雪至山巅博主简介目录一本节⽬标二查看所有表1.语法三创建表1.语法2.⽰例3.表在磁盘上对应的⽂件4.创建数据加时使⽤校验语句[ifnotexists]四查看表结构1.语法2.⽰例五修改表1.语法2.⽰例六删除表1.语法2.⽰例3.注意事项内容大纲本文系统讲解MySQL中表的创建、查看、修改与删除操作。通过SHOW TABLES查看表列表使用CREATE TABLE创建表并指定字符集、存储引擎等属性利用DESC查看表结构通过ALTER TABLE实现增删改列、重命名字段及表名最后使用DROP TABLE删除表。重点强调操作的安全性避免误删数据适用于数据库日常管理与开发需求。一本节⽬标• 掌握创建、查看、修改和删除表二查看所有表1.语法show tables;三创建表1.语法CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name field datatype [约束] [comment 注解内容] [, field datatype [约束] [comment 注解内容]] ... ) [engine 存储引擎] [character set 字符集] [collate 排序规则];• TEMPORARY表⽰创建的是⼀个临时表• field列名• datatype数据类型• comment对列的描述或说明• engine存储引擎不指定则使⽤默认存储引擎• characterset字符集不指定则使⽤默认字符集• collate排序规则不指定则使⽤默认排序规则详细的创建表语法参考官⽅⽹站https://dev.mysql.com/doc/refman/8.0/en/create-table.html2.⽰例• 创建⼀个⽤⼾表其中包含⽤⼾编号、⽤⼾名、密码、⽣⽇并指定字符集为utf8mb4排序规则 为utf8mb4_0900_ai_cicreate table users ( id bigint, name varchar(20) comment 用户名, password char(32) comment 密码是32位的md5值, birthday date comment 生日 ) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci;• 创建⼀个表并指定存储引擎为MyISAMcreate table t_myisam ( id bigint, name varchar(20) comment 用户名 ) engine MyISAM;3.表在磁盘上对应的⽂件* 创建一个存储引擎为 **InnoDB** 的表时会在对应的**数据库目录**下生成一个用来存储真实数据的物理文件命名格式为 **表名.ibd**以当前为例会在 java01 目录下生成一个 users.ibd 的数据文件* 创建一个存储引擎为 MyISAM 的表时会在对应的**数据库目录**下分别生成三个以不同后缀名结尾的文件分别是 表名.MYDMYData的数据文件表名.MYIMYIndex的索引文件以及 表名.sdi 的表信息描述文件(JSON格式)4.创建数据加时使⽤校验语句[ifnotexists]第一步create table if not exists users ( id int, name varchar(20) );效果说明加上IF NOT EXISTS后如果users表已经存在MySQL 不会报错而是会返回一条警告Warning并且不会执行创建操作。可以再次使用show warnings;查看具体信息通常提示 Table users already exists第二步mysql show warnings; ----------------------------------------------- | Level | Code | Message | ----------------------------------------------- | Note | 1050 | Table users already exists | -----------------------------------------------四查看表结构1.语法desc 表名;2.⽰例mysql desc users; -------------------------------------------------- | Field | Type | Null | Key | Default | Extra | -------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | -------------------------------------------------- 4 rows in set (0.02 sec)• Field表中的列名• Type列的数据类型• Null该列的值是否允许为Null• Key该列的索引类型• Default该列的默认值• Extra扩展信息五修改表在项⽬的实际开发中随着版本的迭代和需求的变更经常会对表结构进⾏调整⽐如向现有表中添 加列删除列或者修改某列的列名、数据类型或⻓度这时就需要对表进⾏修改操作。1.语法ALTER TABLE tbl_name [alter_option [, alter_option] ...]; alter_option: { table_options | ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name] | MODIFY [COLUMN] col_name column_definition [FIRST | AFTER col_name] | DROP [COLUMN] col_name | RENAME COLUMN old_col_name TO new_col_name | RENAME [TO | AS] new_tbl_name }• tbl_name要修改的表名• ADD向表中添加列• MODIFY修改表中现有的列• DROP删除表中现有的列• RENAMECOLUMN重命名表中现有的列• RENAME[TO|AS]new_tbl_name重命名当前的表详细的创建表语法参考官⽅⽹站https://dev.mysql.com/doc/refman/8.0/en/alter-table.html2.⽰例向表中添加⼀列# 执行SQL语句 mysql alter table users ADD assets varchar(100) comment 头像地址 after birthday; Query OK, 0 rows affected (0.02 sec) Records: 0 Duplicates: 0 Warnings: 0 # 查看结果 mysql desc users; --------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | | assets | varchar(100) | YES | | NULL | | # 添加列成功 --------------------------------------------------- 5 rows in set (0.00 sec)修改某列的⻓度# 执行SQL语句 mysql alter table users MODIFY assets varchar(255); Query OK, 0 rows affected (0.02 sec) Records: 0 Duplicates: 0 Warnings: 0 # 查看结果 mysql desc users; --------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | | assets | varchar(255) | YES | | NULL | | # 长度修改成功 --------------------------------------------------- 5 rows in set (0.00 sec)重命名某列# 执行SQL语句 mysql alter table users RENAME COLUMN assets TO avatar; Query OK, 0 rows affected (0.02 sec) Records: 0 Duplicates: 0 Warnings: 0 # 查看结果 mysql desc users; --------------------------------------------------- | Field | Type | Null | Key | Default | Extra | --------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | | avatar | varchar(255) | YES | | NULL | | # 重命名成功 --------------------------------------------------- 5 rows in set (0.00 sec)删除某个字段# 执行SQL语句 mysql alter table users DROP avatar; Query OK, 0 rows affected (0.01 sec) Records: 0 Duplicates: 0 Warnings: 0 # 查看表结构avatar列已被删除 mysql desc users; -------------------------------------------------- | Field | Type | Null | Key | Default | Extra | -------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | -------------------------------------------------- 4 rows in set (0.00 sec)修改表名# 执行SQL语句 mysql alter table users RENAME TO employee; Query OK, 0 rows affected (0.01 sec) # 查看所有表users表已经不存在 mysql show tables; ------------------ | Tables_in_java01 | ------------------ | employee | | t_myisam | ------------------ 2 rows in set (0.00 sec) # 查看表结构与之前的users表结构相同 mysql desc employee; -------------------------------------------------- | Field | Type | Null | Key | Default | Extra | -------------------------------------------------- | id | int | YES | | NULL | | | name | varchar(20) | YES | | NULL | | | password | char(32) | YES | | NULL | | | birthday | date | YES | | NULL | | -------------------------------------------------- 4 rows in set (0.00 sec)• 也可以使⽤ RENAME TABLE old_table TO new_table; 为表重命名六删除表1.语法DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...TEMPORARY表⽰临时表tbl_name将要删除的表名2.⽰例# 删除employee表 mysql drop table employee; Query OK, 0 rows affected (0.02 sec) # 删除t_myisam表 mysql drop table t_myisam; Query OK, 0 rows affected (0.01 sec) # 查看所有表 mysql show tables; Empty set (0.00 sec)3.注意事项• 删除表是⼀个危险操作执⾏删除语句时⼀定要谨慎• 删除表成功后磁盘上对应的数据⽂件也会被删除• ⼀次可以删除多个表表与表之间⽤逗号隔开以上就是我们的全部内容了
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

开源推理模型Jev上手实践:密钥申请与Codex集成指南 2026/10/1 19:06:58

开源推理模型Jev上手实践:密钥申请与Codex集成指南

最近朋友圈、技术群和短视频平台上都在刷 Jev,热搜词连着好几天挂着“jev模型官网”“jev密钥”“jev在codex中使用”。作为一个看到新模型就想立刻上手折腾的人,我第一时间去官网申请了密钥,在本地跑起来,又把它接进了 Codex 环境…

阅读更多 →
YOLO目标检测实战:基于COCO猫狗数据集的训练与避坑指南 2026/10/1 19:06:58

YOLO目标检测实战:基于COCO猫狗数据集的训练与避坑指南

简介:这是一份面向YOLOv3目标检测实战的猫狗分类数据集,取自COCO val2014验证集,专门用于训练和评估猫、狗两类检测模型,适合计算机视觉入门与进阶开发者。压缩包约306.54MB,共2000个文件,以JPG原图、TXT标…

阅读更多 →
对话式BI实战:语义层+大模型实现自然语言生成图表 2026/10/1 19:06:51

对话式BI实战:语义层+大模型实现自然语言生成图表

1. 从“排期三个月”到“对话三分钟”:BI交付模式正在被重写做过企业BI项目的人,大概都经历过这样的场景:业务部门提了一个“想看各区域月度销售趋势”的需求,IT部门评估后排期,两周后交付第一版报表,业务看…

阅读更多 →
MiMo-V2.6开源大模型实战:从本地部署到微调应用 2026/10/1 19:06:51

MiMo-V2.6开源大模型实战:从本地部署到微调应用

最近社区里聊得最凶的,就是小米开源的 MiMo-V2.6 系列。这个系列一出来,直接把“开源大模型”这个词的热度又拉高了一个级别,尤其是中文场景下,很多人都拿它和目前主流的开源模型做对比。如果你平时也在关注大模型方向&#xff0c…

阅读更多 →
Codex+Jev:本地化TypeSafe Agent架构实践 2026/10/1 19:06:51

Codex+Jev:本地化TypeSafe Agent架构实践

1. “Codex配Jev”不是玄学,是Agent开发中一次关键的架构升级“给Codex配上Jev,直接起飞”——这句话在最近两周的开发者社区里高频出现,不是营销话术,也不是玄学口号。它背后对应着一个真实、可验证、已在多个生产级Agent项目中落…

阅读更多 →
2026年实力强的geo优化品牌企业行业现状与选择指南 2026/10/1 19:06:51

2026年实力强的geo优化品牌企业行业现状与选择指南

百纳互动网络(福建)有限公司是百度营销的官方授权服务商,深耕互联网广告与数字营销领域多年,是依托精准定向互联网营销分析技术,为区域企业提供全链路网络营销解决方案的专业服务提供商。自2009年成立以来,百纳互动始终锚定为福建…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉