MYSQL——数据删除、更新

本文详细介绍了MySQL中数据的删除与更新操作,包括DROP TABLE语句彻底删除表,DELETE语句删除表中全部或部分数据,以及UPDATE语句更新表中数据,包括指定条件的更新和多列更新等。还提到了TRUNCATE语句用于快速删除全部数据,但无法指定条件,并讨论了使用NULL更新数据的注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DROP TABLE 语句和DELETE语句

1.DROP TABLE语句可以将表完全删除。
如果再想插入数据,必须重新创建一个表
2.delete 语句会留下表(容器),而删除表中的全部数据
想要再次插入数据,使用insert语句即可

DELETE语句的基本语法

1.保留数据表,删除全部数据行
DELETE 语句的删除对象是行(记录)

DELETE FROM 表名;

在这里插入图片描述
在这里插入图片描述

指定删除对象的DELETE语句(搜索型delete)

使用where子句指定删除条件,删除部分数据行

语法结构

DELETE FROM 表名
WHERE 条件;
DELETE FROM ShopinfoCopy
WHERE sale_danjia>4000;

在这里插入图片描述

p.s.舍弃truncate

只能删除表中全部数据,不能指定删除条件,处理速度比delete快,可以回滚。

TRUNCATE  表名;

数据的更新

UPDATE语句的基本语法

UPDATE 表名
   SET 列名=表达式;

更新对象的列和更新后的值都记述在SET子句中。
eg.更改商品表中的日期
原表
在这里插入图片描述

UPDATE ShopinfoCopy
SET  signdate='2009-10-10';

在这里插入图片描述

指定条件的UPDATE语句(搜索型UPDATE)

基本语法

UPDATE 表名
SET 列名=表达式
WHERE 条件;

eg.将厨房用具的销售单价更新为原来的10倍

UPDATE ShopinfoCopy
SET  sale_danjia=10*sale_danjia
WHERE shop_cata='厨房用具';

set子句赋值表达式的右边不仅可以是单纯的值,还可以是包含列的表达式
在这里插入图片描述

使用NULL进行更新

将数据更新为NULL的时候,将赋值表达式右边的值直接写为null即可,只限于未设置not null约束的列
将编号0008数据的登记日期更新为NULL

UPDATE ShopinfoCopy
SET  signdate=NULL
WHERE shop_id='0008';

在这里插入图片描述

多列更新

将厨房用具销售单价更新为10倍,同时进价更新为原来的一半。
方法一、用逗号将列分隔

UPDATE ShopinfoCopy
SET  sale_danjia=10*sale_danjia,
     jinhuo_danjia=jinhuo_danjia/2
WHERE shop_cata='厨房用具';

在这里插入图片描述
方法二、将列用()括起来
但是MYSQL不能使用这种方法,因此建议使用第一种方法

UPDATE ShopinfoCopy
SET  (sale_danjia,jinhuo_danjia)=(10*sale_danjia,jinhuo_danjia/2)
WHERE shop_cata='厨房用具';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值