MySQL8.0 初级学习笔记(七)插入、更新与删除数据和索引

本文介绍了MySQL8.0中如何进行数据的插入、更新和删除操作,包括单条和批量插入、更新记录的条件语句以及删除数据的注意事项。同时讲解了使用DELETE和TRUNCATE的区别,以及如何为表添加计算列的概念。

一、插入数据

为表的所有字段插入数据:

INSERT INTO 表名(指定要插入数据的各种列)VALUES(指定每个列要插入的各种值);

为表的指定字段插入数据:

INSERT INTO 表名(指定要插入数据的字段名/列)VALUSES(指定字段名/列要插入的各种值);

同时插入多条记录:

INSERT INTO 表名(指定要插入数据的各种列)VALUES(指定列1要插入的各种值),(指定列n要插入的各种值);

 

注意:一个同时插入多行记录的INSERT语句等同于多个单行插入的INSERT语句,但是多行的INSERT语句在处理过程中效率更高。因为MYSQL执行单条INSERT语句插入多行数据比使用多条INSERT语句快,所以在插入多条记录时最好选择使用单条INSERT语句的方式插入。

将查询结果插入到表中:

INSERT INTO 表名1(指定待插入表中的要插入数据的哪些列)SELECT(指定数据来源表的查询列)FROM 表名2 WHERE (指定SELECT 语句的查询条件);

二、更新数据

MYSQL中使用UPDATE语句更新表中的记录,可以更新特定的行或者同时更新所有的行。

UPDATE 表名 SET 列名1=指定值1,列名2=指定值2,....列名n=指定值n WHERE (指定更新的记录需要满足的条件);

注意:保证UPDATE以WHERE子句结束,通过WHERE子句指定被更新的记录所需要满足的条件,如果忽略WHERE子句,MYSQL将更新表中所有的行。

三、删除数据

从数据表中删除数据使用DELETE语句,DELETE语句允许WHERE子句指定删除条件。而DELETE是DML。

DELETE FROM 表名 [WHERE<指定删除条件>]

DELETE FROM 表名 WHERE 字段名 BETWEEN X AND Y;

注意:如果想删除表中的所有记录,还可以使用TRUNCATE TABLE语句。TRUNCATE是DDL将直接删除原来的表,并重新创建一个表,其语法结构为TRUNCATE TABLE 表名;。TRUNCATE 直接删除表而不是删除记录,因此执行速度比DELETE快。此外还有DROP,DROP是DDL,会隐式提交,所以不能回滚,不会触发触发器。在速度上DROP>TRUNCATE>DELETE.

四、为表增加计算列 

什么叫计算列?简单来说就是某一列的值是通过别的列计算得来的。例如,a列值为1、b列值为2,c列不需要手动插入,定义a+b的结果为c的值,那么c就是计算列,是通过别的列计算的来的。

col_name data_type [GENERATED ALWAYS] AS (expression)[VIRTUAL|STORED][UNIQUE[KEY]][COMMENT comment][NOT NULL|NULL][[PRIMARY]KEY]

 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值