MySQL操作之数据操作语言(DML)(三)

序号类型地址
1MySQLMySQL操作之概念、SQL约束(一)
2MySQLMySQL操作之数据定义语言(DDL)(二)
3MySQLMySQL操作之数据操作语言(DML)(三)
4MySQLMySQL操作之数据查询语言:(DQL)(四-1)(单表操作)
5MySQLMySQL操作之数据查询语言:(DQL)(四-2)(多表查询)
6MySQLMySQL操作之数据控制语言:(DC)(五)
7MySQLMySQL操作之数据库函数
8MySQLMySQL管理之数据类型
9MySQLMySQL管理之索引
10MySQLMySQL管理之事务管理
11MySQLMySQL管理之存储过程
12MySQLMySQL管理之视图
13MySQLMySQL管理之数据备份与还原
14MySQLLinux(centos 7.5)服务器安装MySQL
15MyBatisMyBatis从入门到多表关联
16MyBatisMyBatis常用方法
17MyBatisMybatis逆向工程的使用(附文件地址)
18MyBatisspring boot连接Mybatis数据库的配置文件(MySql、SQLserver、Oracle)
19MyBatis-PlusMybatis-Plus使用案例(包括初始化以及常用插件)
20MyBatis-PlusMybatis-Plus(Service CRUD 接口)
21MyBatis-PlusMybatis-plus 4种条件构造器方式
22MyBatis-PlusMybatis-Plus 执行自定义SQL
23MyBatis-PlusMyBatis-plus配置自定义SQL(执行用户传入SQL)
24MyBatis-PlusMybatis-Plus(连接Hive)
25MyBatis-PlusMybatis-Plus 代码生成器


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;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ha_lydms

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值