
💐 🌸 🌷 🍀 🌹 🌻 🌺 🍁 🍃 🍂 🌿 🍄🍝 🍛 🍤
📃个人主页 :阿然成长日记 👈点击可跳转
📆 个人专栏: 🔹数据结构与算法🔹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
ALTERTABLE 【表名字】ADD【列名称】【数据类型】【NOT NULL】 【COMMENT ‘注释说明’】
例如:添加列TT
2️⃣ 删除列drop
ALTERTABLE 【表名字】DROP【列名称】
例如:删除TT那一列
3️⃣修改表的名称rename to
ALTERtable 【原来的表名】rename to【修改后的表名】
4️⃣ 修改列的名称名称以及数据类型change
ALTERTABLE 【表名字】CHANGE【列名称】【修改后的列名称】 【修改后的类型 】 【NOT NULL】 【COMMENT ‘注释说明’】
例如:修改bookbooks表中的book列,修改为book999.,并且同时修改数据类型为varchar(21)
1.1原来
执行语句
1.2改后
5️⃣ 修改列的数据类型modify
ALTERTABLE 【表名字】modify【列名称 】 【修改后的类型 】
⁉️与4基本一样,只是modify只能修改数据类型
6️⃣ 添加主键
ALTERTABLE 【表名字】ADDPRIMARY KEY (列名称 )
❗️添加主键时,你需要确保该该列默认不为空(NOT NULL)
7️⃣删除表中主键
AlterTABLE 【表名字】dropprimary key
📍说明;primary key是主键的意思。
8️⃣ 添加普通索引
ALTERTABLE【表名字】ADDINDEXindex_name (列名称 );
添加普通索引,索引值可出现多次。
9️⃣ 添加全文索引
ALTERTABLE【表名字】ADDFULLTEXTindex_name (列名称 );
该语句指定了索引为 FULLTEXT ,用于全文索引
🔟添加唯一索引
ALTERTABLE【表名字】ADDUNIQUEindex_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语法:
truncatetable 【表名字】 ;
🚩五 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语句实际是删除原来的表然后重新建立一个新表。





























