当前位置: 首页 > news >正文

MySQL的创建管理表:

目录

基础知识:

一条数据存储的过程:

标识符命名规则:

创建和管理数据库:

创建数据库:

创建数据库:

创建数据库并指定字符集:

判断数据库是否存在,不存在则创建数据库:

数据库的管理:

查看当前所有的数据库:

查看当前正在使用的数据库:

查看指定库下所有的表:

查看当前库下所有的表:

查看数据库的创建信息:

使用/切换数据库:

修改数据库:

更改数据库的字符集:

删除数据库:

删除指定的数据库:

删除存在的指定的数据库:

表的创建与管理:

创建表:

方式1:

方式2:

举例:

查看表的结构:

查看表的数据:

修改表:

添加字段:

默认添加到表中最后一个字段:

添加到指定位置:

修改字段:

重命名字段:

删除字段:

对表进行重命名:

方式1:

方式2:

删除表:

删除指定的表:

删除存在的指定的表:

清空表:

为什么清空表和删除表等操作需要慎重?


基础知识:

一条数据存储的过程:

存储数据是处理数据的第一步。只有正确地把数据存储起来,我们才能进行有效的处理和分析。

在MySQL中,一个完整的数据存储过程总共有4步,分别是创建数据库、确认字段、创建数据表、插入数据表。

MySQL中数据库系统从大到小依次是数据库服务器、数据库、数据表、数据表的行与列。

标识符命名规则:

数据库名、表名不得超过30个字符,变量名限制为29个。

只能包含A-Z,a-z,0-9,_共63个字符。

数据库名、表名、字段名等对象名中间不要包含空格。

同一个MySQL软件中,数据库不能同名,同一个库中,表不能重名;同一个表中,字段不能重名。

必须保证你的字段没有和保留字、数据库系统或者常用方法冲突。如果坚持使用,需用着重号引起来。

保持字段名和类型的一致性,在命名字段为其指定数据类型的时候一定要保证一致性。

创建和管理数据库:

创建数据库:

创建数据库:

CREATE DATABASE 数据库名;

创建数据库并指定字符集:

CREATE DATABASE 数据库名 CHARACTER SET 字符集;

判断数据库是否存在,不存在则创建数据库:

CREATE DATABASE IF NOT EXISTS 数据库名;

如果MySQL中已经存在相关的数据库,则忽略创建语句,不再创建数据库。创建数据库未指定字符集,那么则使用默认字符集。

数据库的管理:

查看当前所有的数据库:

SHOW DATABASES;

查看当前正在使用的数据库:

SELECT DATABASE();

查看指定库下所有的表:

SHOW TABLES FROM 数据库名;

查看当前库下所有的表:

SHOW TABLES;

查看数据库的创建信息:

SHOW CREATE DATABASE 数据库名;
SHOW CREATE DATABASE 数据库名\G;

使用/切换数据库:

USE 数据库名;

修改数据库:

更改数据库的字符集:

ALTER DATABASE 数据库名 CHARACTER SET 字符集;

删除数据库:

删除指定的数据库:

DROP DATABASE 数据库名;

删除存在的指定的数据库:

DROP DATABASE IF EXISTS 数据库名;

如果数据库存在则删除,如果不存在则忽略该语句。

表的创建与管理:

创建表:

必须具备:CREATE TABLE权限,存储空间。

如果创建表时,未指明使用的字符集,则默认使用表所在的数据库的字符集。

方式1:

CREATE TABLE [IF NOT EXISTS] 表名(字段名1,数据类型 [约束条件] [默认值],字段名2,数据类型 [约束条件] [默认值],字段名3,数据类型 [约束条件] [默认值],...[表约束条件]
);

方式2:

基于现有的表创建一个新表。

CREATE TABLE 表名
AS
SELECT (查询结构
);

可以基于SELECT查询的结果集进行创建新的表, 查询语句中如果对字段名起别名,那么新创建的表的字段名也为别名 查询结构可以是SELECT的完整结构 新创建的表的字段名和类型要和已有的表的字段名和类型一样。对新创建的表的数据进行操作不会对原来的表有影响。

举例:

创建一个表,对已有表的复制,包括数据:

CREATE TABLE 表名
AS
SELECT *
FROM 表名;

创建一个表,对已有表的复制,但是不包括数据:

CREATE TABLE 表名
AS
SELECT *
FROM 表名
WHERE 1=2(对所有数据进行过滤);

查看表的结构:

DESC 表名;
SHOW CREATE TABLE 表名;

查看表的数据:

SELECT * FROM 表名;

修改表:

关键字:ALTER TABLE。

添加字段:

默认添加到表中最后一个字段:
ALTER TABLE 表名
ADD 字段名 数据类型;
添加到指定位置:
ALTER TABLE 表名
ADD 字段名 数据类型 [FIRST|AFTER 字段名];

其中FIRST是将该字段放到表中的第一个字段位置。AFTER 字段名是将该字段放到目标字段后面一个位置。

修改字段:

ALTER TABLE 表名
MODIFY (修改字段的相关内容);

重命名字段:

LATER TABLE 表名
CHANGE 旧的字段名 新的字段名 数据类型;

删除字段:

ALTER TABLE 表名
DROP COLUMN 字段名;

对表进行重命名:

方式1:

RENAME TABLE 表名
TO 新表名

方式2:

ALTER TABLE 表名
RENAME [TO] 新表名;

删除表:

删除指定的表:

DROP TABLE 表名;

删除存在的指定的表:

DROP TABLE [IF EXISTS] 表名;

清空表:

TRUNCATE TABLE 表名;

删除表中的所有数据,释放表的存储空间,但是表的结构保留。

为什么清空表和删除表等操作需要慎重?

表删除操作将把表的定义和表中的数据一起删除,并且在MySQL在执行删除操作时,不会有任何的确认信息提示,因此执行删除操作时应当慎重。在删除表前,最好对表中的数据进行备份,这样当操作失误时可以对数据进行恢复,以免造成无法挽回的后果。

同样的,在使用ALTER TABLE进行表的基本修改操作时,在执行操作过程之前,也应该确保对数据进行完整的备份,因为数据库的改变是无法撤销的,如果添加了一个不需要的字段,可以将其删除;相同的,如果删除一个需要的列,该列下面的所有数据都将会丢失。

http://www.lryc.cn/news/608711.html

相关文章:

  • Memcached Slab分配器:零碎片的极速内存管理
  • [spring-cloud: 服务发现]-源码解析
  • Day 30:模块和库的导入
  • 风光储综合能源系统双层优化规划设计【MATLAB模型实现】
  • 第九章:了解特殊场景下的redis
  • 控制建模matlab练习07:比例积分控制-③PI控制器的应用
  • Spring 03 Web springMVC
  • ESP32学习-I2C(IIC)通信详解与实践
  • C++:STL中的栈和队列的适配器deque
  • Spring Boot AOP 优雅实现异常重试机制
  • AD方案(OpenLDAP或微软AD)适配信创存在的不足以及可能优化方案
  • Nvidia Orin DK 刷机CUDA TensorRT+硬盘扩容+ROS+Realsense+OpenCV+Ollama+Yolo11 一站式解决方案
  • CUDA杂记--nvcc使用介绍
  • Elastic 9.1/8.19:默认启用 BBQ,ES|QL 支持跨集群搜索(CCS)正式版,JOINS 正式版,集成 Azure AI Foundry
  • Jupyter Notebook 中高效处理和实时展示来自 OpenCV 和 Pillow 的图像数据探究
  • Jetpack Compose for XR:构建下一代空间UI的完整指南
  • SpringBoot+Vue高校实验室预约管理系统 附带详细运行指导视频
  • 力扣经典算法篇-41-旋转图像(辅助数组法,原地旋转法)
  • RabbitMQ面试精讲 Day 9:优先级队列与惰性队列
  • 昇思学习营-开发版-模型推理和性能优化
  • Android 之 MVP架构
  • Redis+Lua的分布式限流器
  • Python 实例属性与方法命名冲突:一次隐藏的Bug引发的思考
  • Corrosion2靶机
  • NumPy库学习(三):numpy在人工智能数据处理的具体应用及方法
  • PHP入门及数据类型
  • Android 之 WebView与HTML交互
  • 【Django】-7- 实现注册功能
  • 迈向透明人工智能: 可解释性大语言模型研究综述
  • ubuntu24.04安装selenium、edge、msedgedriver