SQL数据的基本操作是MySQL数据库日常使用的核心内容,主要包括数据的插入、查询、更新和删除四类操作,也就是常说的增删改查。这些操作可以满足绝大多数基础的数据管理需求,是每一位MySQL使用者都需要掌握的基础技能。

操作前的准备
在进行数据操作之前,需要先创建对应的数据库和数据表,以下是创建示例表的SQL语句:
-- 创建测试数据库
CREATE DATABASE IF NOT EXISTS test_db;
-- 切换到测试数据库
USE test_db;
-- 创建用户表
CREATE TABLE IF NOT EXISTS user (
id INT PRIMARY KEY AUTO_INCREMENT,
username VARCHAR(50) NOT NULL,
age INT,
email VARCHAR(100)
);
数据插入操作
数据插入使用INSERT INTO语句,语法有两种常见形式,第一种是指定所有字段插入:
-- 插入完整数据,字段顺序和表定义一致 INSERT INTO user VALUES (NULL, '张三', 25, 'zhangsan@ipipp.com');
第二种是指定字段插入,适合只需要插入部分字段的场景:
-- 只插入用户名和年龄,email字段使用默认值NULL
INSERT INTO user (username, age) VALUES ('李四', 22);
数据查询操作
数据查询使用SELECT语句,最基础的全表查询语法如下:
-- 查询user表所有数据 SELECT * FROM user;
如果需要查询指定字段或者添加筛选条件,可以使用以下写法:
-- 查询年龄大于23岁的用户姓名和邮箱 SELECT username, email FROM user WHERE age > 23;
查询时还可以使用ORDER BY进行排序,LIMIT限制返回条数:
-- 查询年龄最大的前2名用户 SELECT * FROM user ORDER BY age DESC LIMIT 2;
数据更新操作
数据更新使用UPDATE语句,操作时必须添加WHERE条件,避免误更新全表数据:
-- 将用户名为张三的年龄更新为26 UPDATE user SET age = 26 WHERE username = '张三';
如果需要更新多个字段,可以用逗号分隔字段赋值:
-- 同时更新李四的年龄和邮箱 UPDATE user SET age = 23, email = 'lisi@ipipp.com' WHERE username = '李四';
数据删除操作
数据删除使用DELETE FROM语句,同样需要添加WHERE条件,防止误删全表数据:
-- 删除用户名为张三的记录 DELETE FROM user WHERE username = '张三';
如果要清空整表数据,可以使用TRUNCATE TABLE语句,该操作会重置自增主键,且无法回滚:
-- 清空user表所有数据 TRUNCATE TABLE user;
操作注意事项
- 执行更新和删除操作前,建议先使用对应的
SELECT语句查询符合条件的记录,确认范围正确后再执行操作 - 生产环境中尽量避免直接操作线上数据库,可先在测试环境验证SQL语句正确性
- 插入数据时要注意字段类型匹配,比如年龄字段不能插入字符串类型的值
- 查询时如果不需要所有字段,尽量指定具体字段名,减少不必要的数据传输