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

在这里插入图片描述

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

前言:

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

🌈一、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语句实际是删除原来的表然后重新建立一个新表。

  • 31
    点赞
  • 99
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 35
    评论
### 回答1: MySQL alter table add column 是用来在 MySQL 数据库中的表中添加新列的命令。通过这个命令,可以在已有的表中增加新的列,以满足数据存储和查询的需求。在使用这个命令时,需要指定要添加的列的名称、数据类型、长度等信息,以及可选的约束条件。添加新列后,可以使用 insert、update、select 等命令来操作新的列。 ### 回答2: MySQL中的ALTER TABLE命令可以用来修改表的定义,比如增加,修改或删除列。ALTER TABLE命令的语法如下: ALTER TABLE table_name ADD COLUMN column_name column_definition [FIRST | AFTER column_name]; 其中,table_name为需要修改的表的名称,column_name就是待添加的列名,而column_definition则是这个新列的定义,它可以指定列的数据类型、默认值、是否允许为NULL等。 如果你想要在表的首列添加一列,可以用FIRST关键字。如果你想要添加到某一列之后,可以使用AFTER关键字,后面紧跟上需要添加列的前一列名称。 下面是一些具体的例子: 1. 增加一列'type',数据类型为TINYINT,不允许为NULL,默认值为0。 ALTER TABLE users ADD COLUMN type TINYINT NOT NULL DEFAULT 0; 2. 增加一列'email',数据类型为VARCHAR(255),允许为NULL,添加到'username'列之后。 ALTER TABLE users ADD COLUMN email VARCHAR(255) NULL AFTER username; 除了增加列,ALTER TABLE命令还可以用来修改、删除列、重命名表等等,它是MySQL中非常重要的命令之一。但是,需要注意的是,在修改表结构时,一定要谨慎处理,避免造成数据丢失或者其他问题。如需进行复杂的操作,可以先备份原始数据,以防不测发生。 ### 回答3: 在MySQL中,我们可以使用ALTER TABLE语句来修改现有的表结构。其中,添加一列是最基本的修改之一,我们可以使用 ALTER TABLE表名 ADD COLUMN语句来完成。下面,我们来详细了解一下mysql alter table add column 的用法及注意事项。 使用ALTER TABLE添加列的语法如下: ``` ALTER TABLE 表名 ADD COLUMN 列名 数据类型; ``` 其中,表名表示我们需要添加列的表的名称;列名表示我们需要添加的列的名称;数据类型表示我们需要添加的列的数据类型。 例如,我们想要在user表中添加一个age列,数据类型为整数,那么我们可以使用以下语句: ``` ALTER TABLE user ADD COLUMN age int; ``` 在执行该语句前,我们需要注意以下几点: 1. ALTER TABLE只能在已存在的表上进行修改,如果需要创建新的表,应该使用CREATE TABLE语句。 2. 在添加列的时候,需要指定列的名称和数据类型。如果需要设置该列的其他属性(例如默认值、非空等),可以在ADD COLUMN语句后面添加相应的属性设置。 3. 如果添加的列需要添加到指定的位置,可以使用AFTER子句指定。例如,我们想要在user表的name列后添加一个age列,可以使用以下语句: ``` ALTER TABLE user ADD COLUMN age int AFTER name; ``` 4. 在添加列的过程中,如果需要修改已有列的数据类型或其他属性,应该使用CHANGE COLUMN语句。如果需要删除已有列,应使用DROP COLUMN语句。 总之,在MySQL使用ALTER TABLE添加列是一个非常基本的操作,掌握基本的语法和注意事项对于数据表的修改和维护都非常重要。
评论 35
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阿然成长日记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值