序号 | 类型 | 地址 |
1 | MySQL | MySQL操作之概念、SQL约束(一) |
2 | MySQL | MySQL操作之数据定义语言(DDL)(二) |
3 | MySQL | MySQL操作之数据操作语言(DML)(三) |
4 | MySQL | MySQL操作之数据查询语言:(DQL)(四-1)(单表操作) |
5 | MySQL | MySQL操作之数据查询语言:(DQL)(四-2)(多表查询) |
6 | MySQL | MySQL操作之数据控制语言:(DC)(五) |
7 | MySQL | MySQL操作之数据库函数 |
8 | MySQL | MySQL管理之数据类型 |
9 | MySQL | MySQL管理之索引 |
10 | MySQL | MySQL管理之事务管理 |
11 | MySQL | MySQL管理之存储过程 |
12 | MySQL | MySQL管理之视图 |
13 | MySQL | MySQL管理之数据备份与还原 |
14 | MySQL | Linux(centos 7.5)服务器安装MySQL |
15 | MyBatis | MyBatis从入门到多表关联 |
16 | MyBatis | MyBatis常用方法 |
17 | MyBatis | Mybatis逆向工程的使用(附文件地址) |
18 | MyBatis | spring boot连接Mybatis数据库的配置文件(MySql、SQLserver、Oracle) |
19 | MyBatis-Plus | Mybatis-Plus使用案例(包括初始化以及常用插件) |
20 | MyBatis-Plus | Mybatis-Plus(Service CRUD 接口) |
21 | MyBatis-Plus | Mybatis-plus 4种条件构造器方式 |
22 | MyBatis-Plus | Mybatis-Plus 执行自定义SQL |
23 | MyBatis-Plus | MyBatis-plus配置自定义SQL(执行用户传入SQL) |
24 | MyBatis-Plus | Mybatis-Plus(连接Hive) |
25 | MyBatis-Plus | Mybatis-Plus 代码生成器 |
文章目录
- 1、插入表记录:(insert)
- 1.1、为表中所有字段添加数据
- 1.2、为表中指定字段添加数据
- 1.3、同时添加多条数据
- 1.4、插入其它表数据
- 2、更新表记录:(update)
- 3、删除记录:(delete)
- 3.1 `TRUNCATE`删除数据
1、插入表记录:(insert)
基础语法如下,其中字段名可以不填、顺序可变。值可以单个和多个。
INSERT INTO 表名(字段1,字段2,...)
VALUES(值1,值2,...);
MySQL中使用Insert插入数据分为三种:
- 为表中所有字段添加数据
- 为表中指定字段添加数据
- 同时添加多条记录
1.1、为表中所有字段添加数据
1.1.1 INSERT语句中指定字段名:
INSERT INTO 表名(字段1,字段2,...)
VALUES(值1,值2,...);
其中:
- (字段1,字段2,…)为表中的字段的名称。
- (值1,值2,…)必须要与前面字段相对应。
- 字段可与数据库中顺序不一致,但是字段和插入值顺序要一致。
INSERT INTO student(id,name,grade)
VALUES(1,'zhangsan',98);
INSERT INTO student(name,id,grade)
VALUES('zhangsan',1,98);
1.1.2 INSERT语句中不指定字段名:
INSERT INTO 表名
VALUES(值1,值2,...);
- 添加的数据必须要与数据库中字段顺序一致。
INSERT INTO student
VALUES(2,'zhangsan',98)
1.2、为表中指定字段添加数据
INSERT INTO 表名(字段1,字段2...)
VALUES(值1,值2...)
- 为表的指定字段添加数据,就是在INSERT语句中只向部分字段中国添加值,而其它字段为表定义时的默认值。
- (字段1,字段2…)表示:表中字段名称。
- (值1,值2…)表示:指定字段的值。
- 每个值的顺序、类型必须与对应字段一致。
INSERT INTO student(id,name)
VALUES(4,'zhaoliu');
另外写法:
可以为表中指定的字段或者全部字段添加数据。
INSERT INTO 表名
SET 字段名 1=值1[,字段名2 =值2,...]
案例:
INSERT INTO student
SET id=5,name='byta',grade=99;
1.3、同时添加多条数据
在MySQL中提供了一条语句可以插入多条数据
INSERT INTO 表名[(字段1,字段2...)]
VALUES(值1,值2,...),(值1,值2,...)....
- (字段1,字段2…):表明插入的字段名。
- (值1,值2,…):表示插入的记录。可以多条,其中用逗号分隔。
插入表中所有字段数据
INSERT INTO student
VALUES(6,'lilei',55),(7,'zhangsan',23);
指定字段添加数据:
INSERT INTO student (id,name)
VALUES(6,'lilei'),(7,'zhangsan');
1.4、插入其它表数据
插入所有列数据
INSERT INTO emp2
SELECT
*
FROM
employees
WHERE
department_id = 90;
插入指定列数据
INSERT INTO sales_reps(id, name, salary, commission_pct)
SELECT employee_id, last_name, salary, commission_pct
FROM employees
2、更新表记录:(update)
update 表名 set 字段名=值,字段名=值 where 条件;
更新部分数据
UPDATE student SET name='lisi' WHERE id=1;
更新全部数据
UPDATE student SET name='lisi';
3、删除记录:(delete)
DELETE FROM 表名 [where 条件];
删除部分数据
DELETE FROM student where id=1;
删除全部数据
DELETE FROM student;
3.1 TRUNCATE
删除数据
TRUNCATE 表名;
-
TRUNCATE
语法格式很简单,只需要指定表名就能将表数据清除。 -
DELETE
属于DML语句,TRUNCATE
属于DDL语句。 -
DELETE
语句可以通过where条件来指定删除的数据,TRUNCATE
只能清除全部数据。 -
TRUNCATE
删除数据后,自增主键值,重置为1。 -
DELETE
语句执行后,每条记录都会存储在日志中,使用TRUNCATE
语句时,不会在日志中记录删除的内容。因此效率更高
TRUNCATE student;