MySQL——表的管理

news/2025/11/7 13:29:16/文章来源:https://www.cnblogs.com/gccbuaa/p/19199427

目录

一:本节⽬标

二: 查看所有表

2.1 语法

三:创建表

3.1 语法

3.2 实例

3.3 表在磁盘上对应的⽂件

四:查看表结构

4.1 语法

4.2 ⽰例

五:修改表

5.1语法

5.2 ⽰例

5.2.1 向表中添加⼀列

5.2.2 修改某列的⻓度

5.2.3 重命名某列

5.2.4 删除某个字段

5.2.5修改表名

六:删除表

6.1语法

6.2 ⽰例

6.3 注意事项


一:本节⽬标

掌握创建、查看、修改和删除表。

二: 查看所有表

2.1 语法

show tables;

首先我们先使用我们的数据库java116,由于我库没有创建表 就查询, 所以返回空。
empty set:表示空结果集,表示当前数据库中没有表

三:创建表

3.1 语法

CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name(
field datatype [约束] [comment '注解内容']
[, field datatype [约束] [comment '注解内容']] ...
) [engine 存储引擎] [character set 字符集] [collate 排序规则];

TEMPORARY: 表⽰创建的是⼀个临时表
field:列名
datatype:数据类型
comment:对列的描述或说明(就是注释)
engine:存储引擎,不指定则使⽤默认存储引擎

(和创建库的时候一样,如果创建表的时候指定,则只针对当前表生效)
character set:字符集,不指定则使⽤默认字符集
collate:排序规则,不指定则使⽤默认排序规则

3.2 实例

创建⼀个⽤⼾表,其中包含⽤⼾编号、⽤⼾名、密码、⽣⽇,并指定字符集为utf8mb4,排序规则为utf8mb4_0900_ai_ci。

-- 创建⼀个⽤⼾表,其中包含⽤⼾编号、⽤⼾名、密码、⽣⽇,并指定字符集为utf8mb4,排序规则为utf8mb4_0900_ai_ci
-- 两个横线加空格(-- )注释
# 这个也是注释
/*
这个是多行注释
/
create table if not EXISTS users(id bigint comment '用户编号',username VARCHAR(30)  COMMENT'用户名',`password` VARCHAR(30) comment '密码',birthday date COMMENT '生日'
);

创建成功后 就会出现一个OK的字符

我们在navicat中创建表 ,然后我们在命令中查询表

-- 创建⼀个表并指定存储引擎为MyISAM

create table if not EXISTS t_myisam(id bigint ,`name` varchar(30)
)engine = myISAM;

注意:
还需要注意 其他列都以逗号结尾,最后一列的变量没有逗号。
如果我们创建的变量是关键字,我们就要使用反引号

3.3 表在磁盘上对应的⽂件

创建表后有相应的文件

innodb存储引擎,一个表中对应一个文件
其他就是myisan存储引擎对应的三个文件:MYD中my就代表my D就代表数据

四:查看表结构

4.1 语法

desc 表名;

4.2 ⽰例

Field:表中的列名
Type:列的数据类型
Null:该列的值是否允许为Null
Key:该列的索引类型
Default:该列的默认值
Extra:扩展信息

五:修改表

在项⽬的实际开发中,随着版本的迭代和需求的变更,经常会对表结构进⾏调整,⽐如向现有表中添加列,删除列,或者修改某列的列名、数据类型或⻓度,这时就需要对表进⾏修改操作

5.1语法

ALTER TABLE tbl_name [alter_option [, alter_option] ...];
alter_option: {
table_options
| ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name](新增列加到表第一列   |   加到哪一列之后就是 after+列明)
| 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:删除表中现有的列
RENAME COLUMN:重命名表中现有的列
RENAME [TO | AS] new_tbl_name:重命名当前的表
修改类型至少有一个,多个修改逗号隔开。

5.2 ⽰例

5.2.1 向表中添加⼀列

`-- 向表中末尾加入一列`
`alter table users add assets VARCHAR(100) comment '头像地址' after birthday;`

运行展示:
执行以下命令行

在navicat中展示:

5.2.2 修改某列的⻓度

alter table users MODIFY assets VARCHAR(200); 
这样子就很直观的看到修改长度的变化:

5.2.3 重命名某列

-- 重命名某列
alter  table users rename COLUMN id to idname;

运行前后我们看一下命令:

5.2.4 删除某个字段

-- 删除列
alter table users DROP idname;

前后对比

5.2.5修改表名

-- 修改表名
alter table users rename user1;

前后查询对比

六:删除表

6.1语法

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...
TEMPORARY:表⽰临时表
tbl_name:将要删除的表名

数据库删除中所有删除操作都是危险操作,在以后工作中就把删除忘记 !!!

6.2 ⽰例

要使用反引号把表引起来
我们查看以下表:就没有t_myisam

6.3 注意事项

删除表是⼀个危险操作,执⾏删除语句时⼀定要谨慎
删除表成功后,磁盘上对应的数据⽂件也会被删除
⼀次可以删除多个表,表与表之间⽤逗号隔开

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/958764.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【传奇开心果系列】基于Flet框架实现的分析题型的掌握程度不同题型得分饼图样式示例自定义模板特色和完成原理深度解析

【传奇开心果系列】基于Flet框架实现的分析题型的掌握程度不同题型得分饼图样式示例自定义模板特色和完成原理深度解析pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !importan…

Linux命令总览

yum yumdownloader --resolve --destdir=/wise nginx --resolve 下载软件包及所有依赖 rpm sudo rpm -ivh *.rpm -i:install 的缩写,表示安装软件包。 -v:verbose 的缩写,显示安装过程的详细信息。 -h:hash 的缩写…

量化选股与量化交易第819篇:大单短线量化指标公式 - Leone

大单短线量化指标是一个用于筛选可能具有短线妖股特征的股票的综合指标。该指标结合了多个因素,包括20日涨跌幅、流通市值、换手率以及当日振幅,通过综合评分来判断股票是否可能成为妖股。 1、20日涨跌幅:计算股票在…

【MySQL】SQL调优-如何分析SQL性能 - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

asp.net网站编译后出现“发现不明确的匹配”的错误

asp.net网站编译后出现“发现不明确的匹配”的错误参考文章——asp.net系统发布后,报错 :Ambiguous match found. 解决办法 没想到asp.net编译后,变量竟然没有区分大小写。

量化选股与量化交易第820篇:趋势突破K线均线平台指标公式 - Leone

趋势突破K线均线平台指标简介 一、核心指标: 1、MA25:25日简单移动平均线,用于平滑股价数据,反映中期趋势。 2、EMA135:135日指数移动平均线,对价格变化更为敏感,用于捕捉长期趋势。 3、EMA250:250日指数移动平均线…

Docker 部署 Oracle Linux 实操全流程

Oracle Linux 不只是普通的 RHEL 兼容发行版,更是经过 Oracle 每日超 12 万小时工作负载测试的企业级系统,自带 Ksplice(零停机内核补丁)、DTrace(实时诊断)等独家功能,尤其适合搭配 Oracle 数据库、中间件等生…

Redis Key 命名规范文档(含图表与命名规则)

Redis Key 命名规范文档(含图表与命名规则) 一、命名规范与结构说明 统一 Redis Key 命名规范有助于: ✅ 快速定位缓存来源模块 ✅ 避免 Key 冲突与重复写入 ✅ 支持多语言、多租户缓存隔离 ✅ 方便统一监控与清理 …

AI可能的发展

我觉得AI的发展,突破关键是:不会有“意外”  事情是这样的,我最近一直在用AI去了解一些事情。但只是内容的更新,只是从我从别人那里获得了新信息和疑惑之后。我请AI帮我分析。(从AI的本质上可以看出来)但得到的…

联想瑞天500无法禁用安全启动的解决办法

联想瑞天500无法禁用安全启动的解决办法最近给一台联想瑞天500-161Rh的台式机安装银河麒麟系统,用安装盘启动弹出红色警告框,提示要关闭安全启动。进入bios后,在Security菜单最下面找到安全启动选项,但点击进去发现…

2025年中国婚姻家事律师财富管理推荐:专业实力与口碑对比榜

一、引言与行业趋势分析 过去五年,全国法院受理的婚姻家事案件年均增长11.3%,其中涉及股权、信托、跨境保单等复杂财产形态的占比已突破42%。高净值人群在婚姻危机中最关心的不再是“能否离”,而是“如何安全、合规…

【2025膨润土厂家信息:东北防水毯原料名录】

2025年,膨润土在造纸、涂料、非开挖泥浆、防水防渗等场景需求持续放大,但产地分散、指标差异大,采购方常因“区域匹配度”与“应用适配性”两大痛点延误工期。本文按“地域分布—技术专长—服务场景”三维梳理,把最…

2025年膨润土厂家信息:造纸涂料领域应用优选

引言 膨润土作为“工业味精”,在造纸、涂料、环保、石油钻井等场景不可替代。2025年,华东、华北、华南三大产区产能已占全国七成,但厂家在改性工艺、认证等级、配送半径上差异巨大。本文按“区域就近、认证齐全、应…

【2025年】撕碎机厂家信息:华东固废处理五强榜单

2025年,固废资源化政策趋严,企业亟需高效、低耗、智能的撕碎设备。本文按地域分布、技术专长、典型场景三大维度,对国内五家主流撕碎机厂家进行梳理,帮助终端用户、回收商及环保工程公司在短时间内锁定可靠供应商,…

【2025年撕碎机厂家信息:生活垃圾资源化方案】

引言 2025年,固废减量化、资源化政策全面落地,撕碎机成为垃圾处理、再生金属、塑料回收等场景的刚需装备。本文按“地域分布—技术专长—典型应用”三维梳理,精选五家撕碎机厂家,覆盖华东、华南、华北三大产业带,…

Mediatr第一课

第一步 引入NuGet安装该包 MediatR(新版就可以) 第二步 服务注入 builder.Services.AddMediatR(cfg => { cfg.RegisterServicesFromAssemblyContaining<Program>();}); 说明: MediatR 有两种消息进行分发: …

【2025年膨润土厂家信息:华东高纯钠基五强榜单】

2025年,膨润土在造纸、涂料、非开挖、铸造、环保等细分场景的需求持续分化,用户对“高纯度、高分散、高稳定性”指标的关注度显著提升。为帮助采购、技术、工程部门在一个月内完成供应商比选,本文把公开渠道可核实的…

LLMOps+DeepSeek:大模型赋能一体化运维

本文来自腾讯蓝鲸智云社区用户: CanWay01.背景 蛇年伊始,DeepSeek凭借其卓越表现火爆出圈,让AI大模型瞬间成为街头巷尾热议的焦点,也让大众重新燃起对AGI(通用人工智能)“平民化”的信心,DeepSeek通过先进的模型…

量化选股与量化交易第823篇:通达信潜伏涨停板 - Leone

通达信潜伏涨停板主图MA5:MA(C,5); MA10:MA(C,10); MA20:MA(C,20); MA60:MA(C,60); N:=7; N1:=20; M:=20;V1:=MA(VOL,5); V2:=VOL/REF(V1,1)>2; ZYG1:=MA(CLOSE,M); ZYG2:=HHV(HIGH,M); ZYG3:=LLV(LOW,M); ZYG4:=(Z…

深入解析:权限管理混乱微服务安全架构:OAuth2.0+JWT无感刷新方案非法请求拦截率

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …