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

【MySQL系列】ALTER语句详解,以及UPDATE,DELECT,TRUNCATE语句的使用+区别

在这里插入图片描述

💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹C语言进阶
🚩 不能则学,不知则问,耻于问人,决无长进
🍭 🍯 🍎 🍏 🍊 🍋 🍒 🍇 🍉 🍓 🍑 🍈 🍌 🍐 🍍

前言:

上一篇博客讲解了字符集,数据类型,还有简单的数据库的创建与删除。本篇博客将讲解MySQL的修改更新删除等操作

文章目录

  • 🌈一、ALTER
    • 1.ALTER的简介:
    • 2.ALTER的语法:
      • 1️⃣ 添加列add
      • 2️⃣ 删除列drop
      • 3️⃣修改`表`的名称rename to
      • 4️⃣ 修改==列==的名称名称以及数据类型change
      • 5️⃣ 修改==列==的数据类型modify
      • 6️⃣ 添加主键
      • 7️⃣删除表中主键
      • 8️⃣ 添加普通索引
      • 9️⃣ 添加全文索引
      • 🔟添加唯一索引
      • 注意:主键就是一个索引
  • 🌈二、UPDATE
    • 1、UPDATE定义:
    • 2.UPDATA语法
    • 2.UPDATE使用:
    • 3.使用细节
  • 🌈三、DELECT
    • 1.DELECT的定义:
      • DELECT语法:
  • 🌈四、truncate
    • truncate 定义:
    • truncate语法:
  • 🚩五 DROP,TRUNCATE 与 DELECT区别

🌈一、ALTER

1.ALTER的简介:

ALTER在MySQL中用于更改数据库的全局特性,这些特性储存在数据库目录中的db.opt文件中,要使用ALTER DATABASE,您需要获得数据库ALTER权限。常用来修改表的结构。

2.ALTER的语法:

在这里插入图片描述
注意:使用alter语句修改的是结构,不是里面的具体内容

1️⃣ 添加列add

ALTER TABLE 【表名字ADD列名称】【数据类型】【NOT NULL】 【COMMENT ‘注释说明’】

例如:添加列TT

在这里插入图片描述

在这里插入图片描述

2️⃣ 删除列drop

ALTER TABLE 【表名字 DROP列名称

例如:删除TT那一列

在这里插入图片描述

在这里插入图片描述

3️⃣修改的名称rename to

ALTER table 【原来的表名】 rename to 【修改后的表名】
在这里插入图片描述

在这里插入图片描述

4️⃣ 修改的名称名称以及数据类型change

ALTER TABLE 【表名字CHANGE列名称】【修改后的列名称】 【修改后的类型 】 【NOT NULL】 【COMMENT ‘注释说明’】

例如:修改bookbooks表中的book列,修改为book999.,并且同时修改数据类型为varchar(21)

1.1原来 在这里插入图片描述
执行语句在这里插入图片描述
1.2改后 在这里插入图片描述

5️⃣ 修改的数据类型modify

ALTER TABLE 【表名字 modify列名称 】 【修改后的类型

⁉️与4基本一样,只是modify只能修改数据类型

6️⃣ 添加主键

ALTER TABLE 【表名字ADD PRIMARY KEY (列名称 )
❗️添加主键时,你需要确保该该列默认不为空(NOT NULL)

7️⃣删除表中主键

Alter TABLE 【表名字dropprimary key

📍说明;primary key是主键的意思。

8️⃣ 添加普通索引

ALTER TABLE【表名字ADD INDEX index_name (列名称 );
添加普通索引,索引值可出现多次。

9️⃣ 添加全文索引

ALTER TABLE【表名字ADD FULLTEXT index_name (列名称 );
该语句指定了索引为 FULLTEXT ,用于全文索引

🔟添加唯一索引

ALTER TABLE【表名字ADD UNIQUE index_name (列名称 );
这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。

注意:主键就是一个索引

🌈二、UPDATE

1、UPDATE定义:

update语句用于修改表中已经存在的数据;

2.UPDATA语法

UPDATE表名字SET列名称 】= 【修改的值】where 根据条件修改对应列内元素值。

2.UPDATE使用:

在这里插入图片描述

修改borrow表中的Hname字段,当中值为‘王花花’的这一行,修改为‘小狗狗

在这里插入图片描述

在这里插入图片描述

3.使用细节

1️⃣where语句用于指定更新列中的哪些行,如果没有where条件查询语句,那么则改变整个列的值
2️⃣如果需要修改多个列(字段),可以使用 set 字段1,set 字段2;

🌈三、DELECT

1.DELECT的定义:

Delete只是删除表内的数据

DELECT语法:

1.删除表中所有记录

DELECT FROM表名字】;

2.删除表中指定行的元素

DELECT FROM表名字where
根据条件修改对应列内元素值。

🌈四、truncate

truncate 定义:

truncate 与delect用法基本一致:

truncate语法:

truncate table 【表名字】 ;

🚩五 DROP,TRUNCATE 与 DELECT区别

1️⃣ TRUNCATE 与 DELECT:两者都是删除表数据 但不会删除表结构,DROP删除的是表结构.

2️⃣.delete支持按条件删除,TRUNCATE不支持。
3️⃣ .delete 删除后自增列不会重置,而TRUNCATE会被重置。
3️⃣ .速度,一般来说: drop> truncate > delete。.delete是逐条删除(速度较慢),truncate是整体删除(速度较快)。
5️⃣ 安全性:小心使用drop 和truncate,尤其没有备份的时候.否则哭都来不及。
6️⃣由于delete 是数据操作语言(DML - Data Manipulation Language),操作时原数据会被放到 rollback segment中,可以被回滚;而TRUNCATE是数据定义语言(DDL - Data Definition Language),操作时不会进行存储,不能进行回滚。truncate语句实际是删除原来的表然后重新建立一个新表。

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

相关文章:

  • c++关键字 =delete和=default
  • idea 左下角的Git(Version Control)中显示Local Changes窗口
  • .net老项目中Jquery访问webservice
  • SpringBoot项目集成ElasticSearch服务
  • 2023年网络安全比赛--综合渗透测试(超详细)
  • 一次网络不通“争吵“引发的思考
  • 【使用Node.js搭建自己的HTTP服务器】
  • 回归预测 | MATLAB实现PSO-RF粒子群优化算法优化随机森林算法多输入单输出回归预测(多指标,多图)
  • ● 392.判断子序列 ● 115.不同的子序列
  • 4.SpringCloud 基本架构
  • springboot后端返回图片,vue前端接收并显示的解决方案
  • 算法|Day46 动态规划14
  • 宠物小程序开发攻略:五分钟教你打造宠物店小程序
  • open suse 15.5(任意版本) 使用阿里云的repo
  • 第一篇:编写 Hello World 程序
  • python 打印沁园春 雪 居中对齐 文本对齐
  • 在 IDEA 中使用 Git开发 图文教程
  • NodeJs导出PDF
  • 内核编译机制
  • 机器人TF坐标系变换与一些可视化工具的应用
  • c++ 友元 运算符重载详解
  • DataWhale 机器学习夏令营第三期
  • 回归预测 | MATLAB实现BES-LSSVM秃鹰搜索算法优化最小二乘支持向量机多输入单输出回归预测(多指标,多图)
  • python分析实战(4)--获取某音热榜
  • Java根据List集合中的一个字段对集合进行去重
  • (AtCoder Beginner Contest 315)
  • API 接口选择那个?RESTful、GraphQL、gRPC、WebSocket、Webhook
  • 「Python|音视频处理|环境准备」如何在Windows系统下安装并配置音视频处理工具FFmpeg
  • 软考高级架构师下篇-12层次式架构设计理论与实践
  • 234. 回文链表