mysql查看被删除的数据(全程软件测试七十九)(1)

序言—删除数据

继《全程软件测试(七十八):数据表插入数据、更新数据—读书笔记》文章,序言介绍数据库之删除数据。

在MySQL通过DELETE语句删除数据表中的数据。在此,我们先准备一张数据表,代码如下:

-- 创建学生表 create table student( id int, name varchar(30), age int, gender varchar(30) ); -- 插入数据 insert into student (id,name,age,gender) values (2,'lucy',17,'female'),(3,'jack',19,'male'),(4,'tom',18,'male'),(5,'sal',19,'female'),(6,'sun',20,'male'),(7,'sad',13,'female'),(8,'sam',14,'male');

1. DELETE基本语法

在该语法中:表名用于指定要执行删除操作的表;[WHERE 条件表达式]为可选参数用于指定删除的条件。

DELETE FROM 表名 [WHERE 条件表达式];

2. DELETE删除部分数据

示例:删除age等于14的所有记录 MySQL命令:

delete from student where age=14;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(2)

3. DELETE删除全部数据

示例:删除student表中的所有记录 MySQL命令:

delete from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(3)

4. TRUNCATE和DETELE的区别

TRUNCATE和DETELE都能实现删除表中的所有数据的功能,但两者也是有区别的:

  1. DELETE语句后可跟WHERE子句,可通过指定WHERE子句中的条件表达式只删除满足条件的部分记录;但是,TRUNCATE语句只能用于删除表中的所有记录。
  2. 使用TRUNCATE语句删除表中的数据后,再次向表中添加记录时自动增加字段的默认初始值重新由1开始;使用DELETE语句删除表中所有记录后,再次向表中添加记录时自动增加字段的值为删除时该字段的最大值加1
  3. DELETE语句是DML语句,TRUNCATE语句通常被认为是DDL语句
MySQL数据表简单查询

1.简单查询概述

简单查询即不含where的select语句。在此,我们介绍简单查询中最常用的两种查询:查询所有字段和查询指定字段。

在此,先准备测试数据,代码如下:

-- 创建数据库 DROP DATABASE IF EXISTS mydb; CREATE DATABASE mydb; USE mydb; -- 创建student表 CREATE TABLE student ( sid CHAR(6), sname VARCHAR(50), age INT, gender VARCHAR(50) DEFAULT 'male' ); -- 向student表插入数据 INSERT INTO student (sid,sname,age,gender) VALUES ('S_1001', 'lili', 14, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1002', 'wang', 15, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1003', 'tywd', 16, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1004', 'hfgs', 17, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1005', 'qwer', 18, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1006', 'zxsd', 19, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1007', 'hjop', 16, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1008', 'tyop', 15, 'female'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1009', 'nhmk', 13, 'male'); INSERT INTO student (sid,sname,age,gender) VALUES ('S_1010', 'xdfv', 17, 'female');

2.查询所有字段(方法不唯一只是举例)

查询所有字段 MySQL命令:

select * from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(4)

3.查询指定字段(sid、sname)

查询指定字段(sid、sname) MySQL命令:

select sid,sname from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(5)

4.常数的查询

在SELECT中除了书写列名,还可以书写常数。可以用于标记

常数的查询日期标记 MySQL命令:

select sid,sname,'2021-03-02' from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(6)

5.从查询结果中过滤重复数据

在使用DISTINCT 时需要注意:

在SELECT查询语句中DISTINCT关键字只能用在第一个所查列名之前。

MySQL命令:

select distinct gender from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(7)

6.算术运算符(举例加运算符)

在SELECT查询语句中还可以使用加减乘除运算符。

查询学生10年后的年龄 MySQL命令:

select sname,age 10 from student;

运行效果展示:

mysql查看被删除的数据(全程软件测试七十九)(8)

,