网站建设设计广州网站建设公司

厦门煜远环保科技有限公司 2026/09/09 19:23:13

在上一篇数据库与数据表管理的基础上,本次实验聚焦表数据的核心维护操作 —— 插入、更新与删除。数据维护是数据库日常使用中最频繁的场景,无论是批量录入数据、修正错误信息,还是清理无效记录,都需要熟练掌握对应的 SQL 语法。本文将通过实操案例,拆解 MySQL 数据维护的关键技巧,帮你轻松搞定数据增删改!

一、实验核心目标

  1. 掌握单条数据、多条数据的插入方法,包括完整字段插入和指定字段插入
  2. 学会灵活更新表数据,精准定位目标记录(避免批量误改)
  3. 熟练使用删除语句清理指定记录、清空表数据,理解不同删除方式的差异
  4. 结合多表场景,实现数据维护的综合应用

二、核心知识点与实操详解

(一)数据插入:INSERT 语句的 3 种实用场景

INSERT 语句是向表中添加数据的核心,支持单条插入、批量插入、指定字段插入,满足不同业务需求。

1. 环境准备:创建数据库与数据表

先搭建实验环境,创建 yygl 数据库和 emp 表(员工表)、salary 表(薪资表):

sql

-- 创建yygl数据库并选择 CREATE DATABASE yygl; USE yygl; -- 创建emp表(员工信息表) CREATE TABLE emp( empno char(4) NOT NULL PRIMARY KEY, -- 员工编号,主键非空 ename varchar(10), -- 员工姓名 job varchar(10), -- 职位 hiredate date, -- 入职日期 deptno char(3) -- 部门编号 ); -- 创建salary表(薪资表) CREATE TABLE salary( empno char(4) NOT NULL PRIMARY KEY, -- 员工编号,与emp表关联,主键非空 income float, -- 收入 outcome float -- 支出 );
2. 插入数据的 3 种方式
(1)完整字段单条插入

指定所有字段的值,字段顺序需与表结构一致:

sql

-- 插入emp表第一行数据(完整字段) INSERT INTO emp VALUES('7369','SMITH','CLERK','2005-10-1','20');
(2)完整字段批量插入

用逗号分隔多条记录,一次执行插入多条数据,效率更高:

sql

-- 批量插入emp表后三行数据 INSERT INTO emp VALUES ('7499','ALLEN','SALESMAN','2000-05-01','30'), ('7521','WARD','SALESMAN','2010-06-17','30'), ('7566','JONE','MANAGER','2000-04-23','20');
(3)指定字段插入

只插入部分必填字段,未指定的字段若允许为空则显示 NULL:

sql

-- 仅插入empno和ename字段,其他字段留空 INSERT INTO emp(empno,ename) VALUES('7788','SCOTT');
3. 薪资表数据插入(实操示例)

sql

-- 向salary表插入4条薪资数据 INSERT INTO salary VALUES ('7369',8000,1320), ('7499',12000,1463), ('7521',11500,1463), ('7566',13000,1566);

(二)数据更新:UPDATE 语句精准修改

UPDATE 用于修改表中已有数据,核心是通过 WHERE 子句定位目标记录,否则会误改全表数据!

1. 基础语法

sql

UPDATE 表名 SET 字段1=值1, 字段2=值2 WHERE 条件;
2. 实操案例
(1)修改指定员工的职位和入职日期

sql

-- 将empno为7788的SCOTT职位改为ANALYST,入职日期改为2007-02-10 UPDATE emp SET job='ANALYST',hiredate='2007-02-10' WHERE empno='7788';
(2)计算并更新薪资字段

先为 salary 表增加 sal(净收入)字段,再通过表达式计算值:

sql

-- 为salary表增加sal字段(净收入) ALTER TABLE salary ADD sal float; -- 计算sal=income-outcome,并更新到每行 UPDATE salary SET sal=income-outcome;
3. 避坑提示
  • MySQL 默认开启SQL_SAFE_UPDATES=1(安全更新模式),禁止无 WHERE 条件的更新,若需批量更新可临时关闭:

    sql

    SET SQL_SAFE_UPDATES=0; -- 关闭安全模式(操作后可重新开启为1)
  • WHERE 条件尽量使用主键(如 empno)或唯一字段,确保修改目标精准

(三)数据删除:DELETE 与 TRUNCATE 的区别与应用

删除数据分为 “删除指定记录”“清空全表” 两种场景,对应 DELETE 和 TRUNCATE 两个命令,用法和效果差异较大。

1. 删除指定记录(DELETE)

sql

-- 删除deptno为30的部门员工记录 DELETE FROM emp WHERE deptno='30'; -- 删除salary表中income在8000-10000(含边界)的记录 DELETE FROM salary WHERE income BETWEEN 8000 AND 10000;
2. 清空全表数据(两种方式对比)
命令语法特点适用场景
DELETEDELETE FROM 表名;逐行删除,可回滚,保留表结构和自增序列需保留表结构,可能后续恢复数据
TRUNCATETRUNCATE TABLE 表名;快速清空,不可回滚,重置自增序列彻底清空表数据,无需保留历史

实操示例

sql

-- 清空emp表所有记录(TRUNCATE方式) TRUNCATE TABLE emp;
3. 高级删除:删除表与数据库

数据维护完成后,可删除临时表或数据库(谨慎操作!):

sql

-- 删除salary表 DROP TABLE salary; -- 删除YGGL数据库 DROP DATABASE YGGL;

(四)综合实操:数据维护完整流程

结合上述知识点,完成从数据插入到最终清理的全流程:

  1. 创建数据库和表:CREATE DATABASE yygl; USE yygl; CREATE TABLE emp(...);
  2. 插入数据:单条插入、批量插入、指定字段插入
  3. 更新数据:修改指定记录、通过表达式计算更新字段
  4. 删除数据:删除指定条件记录、清空全表
  5. 清理环境:删除表和数据库

三、实验总结与避坑指南

  1. 插入数据注意事项:

    • 字段值与数据类型匹配(如 date 类型需符合 YYYY-MM-DD 格式)
    • 主键不可重复,非空字段必须赋值
    • 批量插入比单条插入效率更高,大数据量推荐使用
  2. 更新数据核心原则:

    • 永远不要省略 WHERE 子句(除非确实需要更新全表)
    • 多字段更新用逗号分隔,赋值符号用=(不是==
    • 修改前可先执行 SELECT 语句验证条件是否正确(如SELECT * FROM emp WHERE empno='7788';
  3. 删除数据关键区别:

    • DELETE 是 DML 语句,可通过事务回滚;TRUNCATE 是 DDL 语句,不可回滚
    • TRUNCATE 清空后自增字段会重置为初始值,DELETE 不会
    • DROP TABLE/DATABASE 会删除表 / 库结构,数据完全不可恢复,务必谨慎
  4. 常用技巧:

    • 插入部分字段时,明确指定字段名(可读性更强,避免表结构变更导致错误)
    • 数值范围查询用BETWEEN...AND...(如收入 8000-10000)
    • 临时关闭安全更新模式后,记得及时开启,避免误操作

数据维护是 MySQL 实战的基础,掌握 INSERT、UPDATE、DELETE 的灵活运用,能解决大部分日常数据处理需求。建议多结合实际场景练习(比如模拟员工信息录入、薪资调整、离职人员清理),加深对语法的理解和记忆。如果在操作中遇到问题,欢迎在评论区交流讨论!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

南京网站建设网站建设论坛

快速体验打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容:制作一个交互式LaTeX符号学习应用,包含:1)

2026/06/30 10:31:20

网站建设报价西安企业网站建设

一文讲透RS485收发器选型:从原理到实战的硬核指南你有没有遇到过这样的场景?一个看似简单的RS485通信系统,布线几百米后开始丢包、乱码;或者

2026/06/30 12:31:31

东阳网站建设孝感网站建设

在学术写作的高压赛道上,大学生、研究生、科研人员迫切需要高效、安全、高质量的AI论文工具。经过严苛实测与多维对比,我们推出2025年度AI论文神器精选清单,直

2026/06/30 10:29:20

门户网站建设广东网站建设

第一章:Open-AutoGLM向量检索调优概述在大规模语言模型与知识检索融合的背景下,Open-AutoGLM作为支持自动化语义检索的开源框架,其向量检索模

2026/06/30 09:57:47

安徽网站建设徐家汇网站建设

你是否曾经在深夜想要阅读一篇深度分析,却被付费墙无情地挡在门外?在信息爆炸的时代,我们需要的不仅是获取内容的渠道,更是理解技术背后的逻辑。本文将

2026/06/30 12:58:04

免费网站建设郴州网站建设

Qwen2.5-32B:对话推理新突破,规则强化学习实战指南【免费下载链接】Qwen2.5-32B-DialogueReason项目地址: https://ai.gitco

2026/06/30 10:29:51

建设银行网站小程序网站建设

第一章:高精度农业监控系统中的时间同步挑战在高精度农业监控系统中,传感器节点广泛分布于农田各处,用于采集土壤湿度、气温、光照强度等关键数据。这些数据的时间戳精

2026/06/30 10:53:52

中国建设银行网站网站建设明细报价表

第一章:VSCode终端日志分析的核心价值在现代软件开发中,终端日志是排查问题、监控运行状态和优化开发流程的重要依据。VSCode 作为主流的代码编辑器,其集

2026/06/30 12:26:01

北京网站建设报价网站建设视频

ncmdump终极指南:快速解锁网易云音乐加密文件的完整解决方案【免费下载链接】ncmdump转换网易云音乐 ncm 到 mp3 / flac. Convert Netease Clou

2026/06/30 12:28:31

吉安网站建设南京网站建设公司

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等

2026/06/30 13:23:35