MYSQL数据库-DML数据操作(增删改)

134 阅读3分钟

前言

本系列MySQL数据库,就带各位小伙伴学习数据库技术。数据库技术是Java开发中必不可少的一部分知识内容。也是非常重要的技术。本系列教程由浅入深, 全面讲解数据库体系。 非常适合零基础的小伙伴来学习。


全文大约 【1133】字,不说废话,只讲可以让你学到技术、明白原理的纯干货!本文带有丰富案例及配图,让你更好的理解和运用文中的技术概念,并可以给你带来具有足够启迪的思考

一. 什么是DML

DML(Data Manipulation Language)语句:数据操纵语句,用于添加、删除、更新和查询数据库记录,并检查数据完整性,常用的语句关键字主要包括 insert、delete、udpate 等。(增添改)

接下来在操作表数据之前, 我们先来创建一个学生表结构:

CREATE TABLE `student` (
  `SId` varchar(10) DEFAULT NULL,
  `Sname` varchar(10) DEFAULT NULL,
  `Sage` datetime DEFAULT NULL,
  `Ssex` varchar(10) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

二. 新增数据(INSERT)

SQL语法:

INSERT INTO 表名(列 1,列 2,列 3....) VALUES(值 1,值 2,值 3......);

1. 添加一条信息

下面带各位小伙伴进行添加表数据, 演练一番:

#添加一条学生信息
INSERT INTO `student` VALUES ('01', '赵雷', '1990-01-01 00:00:00', '男');
#一口气添加四条学生信息
INSERT INTO `student` VALUES 
('14', '青龙', '2018-01-01 00:00:00', '男'), 
('15', '白虎', '2018-01-01 00:00:00', '女'),
('16', '朱雀', '2018-01-01 00:00:00', '女'),
('17', '玄武', '2018-01-01 00:00:00', '男');

注意:表名后的列名和 VALUES 里的值要一一对应(个数、顺序、类型)

三. 修改数据(UPDATE)

SQL语法:

UPDATE 表名 SET 列1=新值1, 列2=新值2, ..... WHERE 条件;

1. 修改一条信息

更改表中的数据在实际需求中必不可少,如下:

#修改编号为17的学生名字为饕鬄
UPDATE student SET Sname = '饕鬄' WHERE SId = 17;
#修改编号为17的学生名字为饕鬄, 性别为女
UPDATE student SET Sname = '饕鬄',Ssex='女' WHERE SId = 17;

注意: SET 后多个列名=值,绝大多数情况下都要加 WHERE 条件,指定修改,否则为整表更新

四. 删除数据(DELETE)

SQL语法:

DELETE FROM 表名 WHERE 条件;

1. 删除一条信息

下面是删除表中的数据,可以根据需要进行单条删除或者根据条件批量删除:

#删除编号为17的学生
DELETE FROM student WHERE SId='17';
#删除姓名叫朱雀并且性别是女的数据
DELETE FROM student WHERE Sname='朱雀' and ssex='女';

● 注意:删除时,如若不加 WHERE条件,删除的是整张表的数据

2. 清空整表数据(TRUNCATE)

SQL语法:

TRUNCATE TABLE 表名;

3. 清空整张表

直接清空表速度更快哦:

#清空student整张表
TRUNCATE TABLE student;

注意: 与 DELETE 不加 WHERE 删除整表数据不同,TRUNCATE 是把表销毁,再按照原表的格式创建一张新表, 所以TRUNCATE比DELETE语句更快速。


五. 结语

最后我们在这里对本文核心要点进行总结:

1.  DML就是对表中的数据进行增删改的语句语法非常重要。

2.  熟练掌握添加数据insert, 修改数据update, 删除数据delete语句语法。

3.  TRUNCATE语句是清空表, 原理是将原来的表销毁再重新按照原来表结构创建表, 速度比delete语句删除表中所有数据更快。