数据的写操作
# 0.前言
MySQL最主要的功能是管理数据, 也就是增/删/改/查
, 也叫CURD
, 从大的方面划分就是写操作和读操作
首先, 我们来学习写操作
# 1.添加操作
# 1) 基本用法
把握3点
- 插入哪张表?
- 插入表的哪些列(字段)?
- 这些列的值?
语法
INSERT INTO `表名`
(`字段1`, ... `字段n`)
VALUES
(值1, 值2, 值n)
1
2
3
4
2
3
4
示例一. 插入单条记录
# 先选择db1数据库
USE `db1`;
# 向t1表中添加一条数据
INSERT INTO `t1`
(`id`, `name`, `age`)
VALUES
(1, 'xiaoming', 20);
1
2
3
4
5
6
7
2
3
4
5
6
7
如何查看数据是否添加成功?
先了解一个基本的查询操作
# 查询表中的所有记录
select * from `表名`;
1
2
2
示例二. 一次插入多条记录
# 向t1表中一次添加多条记录
INSERT INTO `t1`
(`id`, `name`, `age`)
VALUES
(2, 'xiaomei', 18),
(3, 'xiaoqiang', 22);
1
2
3
4
5
6
2
3
4
5
6
一个() : 代表一条记录
多个()使用,隔开
扩展
如果已经在db1数据库下, 不用执行USE命令
, 也可以显式的指定库名, 如
INSERT INTO db1.t1
(`id`, `name`, `age`)
VALUES
(1, 'xiaoming', 20);
1
2
3
4
2
3
4
# 2) 允不允许只插入部分字段和值?
尝试
INSERT INTO `student`
(`name`, `age`)
VALUES
('xiaomei', 18);
1
2
3
4
2
3
4
结论: _____________
# 3) 允不允许不写字段?
尝试
INSERT INTO `student`
VALUES
('laowang', 30);
1
2
3
2
3
尝试
INSERT INTO `student`
VALUES
(null, 'laowang', 30);
1
2
3
2
3
结论: _________
# 4) 添加案例
- 超出整型范围
INSERT INTO `t_int` (age) VALUES (300);
1
- 浮点型精度丢失问题
INSERT INTO `t_float` VALUES (12345678.12, 123.12, 12345678.12);
1
- 插入中文数据
INSERT INTO `t_char` (name) VALUES ('小明');
1
- 如果插入的字符串超过长度, 会怎样?
INSERT INTO `t_char` (phone) VALUES ('130123456789');
1
- 如果插入的值不在enum的选型类, 会怎样?
INSERT INTO `t_char` (sex) VALUES ('女博士');
1
- 如果字段类型是字符型, 插入的数据是整型或者小数型会怎样?(数字型字符串'123'跟123是等同的)
INSERT INTO `t_char` (phone) VALUES (13012345678);
INSERT INTO `t_char` (phone) VALUES (123456789.1);
1
2
2
- 如果字段不能为null, 但是添加的时候没有指定会怎样?
INSERT INTO `t_null` (id) VALUES (1);
1
设置了not null的字段, 在插入数据时必须出现在字段列表中
- 如果设置了默认值, 但是添加的时候没有指定会怎样?
INSERT INTO `t_default` (name) VALUES ('xiaoming');
1
添加案例小结
- 插入数据的类型最好与要求的类型一致
- 插入的数据必须在有效范围内
- 插入的数据为null时给默认值
- 自增会在原来的基础上+1
# 2.修改操作
4点
- 修改哪张表?
- 修改表的哪些列(字段)?
- 这些列的值?
- 条件
语法
UPDATE `表名`
SET
`字段1`=值1,
`字段2`=值2,
...
WHERE 条件
1
2
3
4
5
6
2
3
4
5
6
示例
UPDATE `student`
SET
`name`='xiaoming-new'
WHERE `id`=1;
1
2
3
4
2
3
4
演示
# 3.删除操作
2点
- 删除哪张表?
- 删除哪些行?
语法
DELETE FROM `表名` WHERE 条件
1
示例
DELETE FROM `student` WHERE `id`=3;
1
演示
如果觉得有帮助, 可以微信扫码, 请杰哥喝杯咖啡~

上次更新: 2021/09/03, 15:32:17