MySQL_DML_数据处理语句
DML(Data Manipulation Language)
数据操纵语言,可对表中的数据的增删改:insert update dalete
- 数据的插入
/*
语法:
插入单行:
insert into 表名(字段1,字段2,...) values(值1,值2,...);
插入多行:
insert into 表名(字段名1,字段名2,...) values(值1,值2,...),(值1,值2,...),(值1,值2,...);
特点:
①字段和值列表一一对应(包含类型、约束等必须匹配)
②数值型的值,不用单引号;非数值型的值必须用单引号
③字段顺序要求
*/
#案例1:要求字段和值列表一一对应,且遵循类型和约束的限制
INSERT INTO stuinfo(stuid,stuname,stugender,email,age,majorid)
VALUES(1,'熊大','女','sisi@qq.com',12,1);
#案例2:空字段如何插入
-- 方案1:字段名和值都不写
INSERT INTO stuinfo(stuid,stuname,email,majorid)
VALUES(1,'熊大','sisi@qq.com',2);
-- 方案2:字段名写上,值使用null
INSERT INTO stuinfo(stuid,stuname,email,age,majorid)
VALUES(1,'熊大','sisi@qq.com',NULL,2);
#案例3:默认字段如何插入
-- 方案1:字段名写上,值使用default
INSERT INTO stuinfo(stuid,stuname,email,stugender,majorid)
VALUES(7,'熊大','sisi@qq.com',DEFAULT,2);
-- 方案2:字段名和值都不写
INSERT INTO stuinfo(stuid,stuname,email,majorid)
VALUES(7,'熊大','sisi@qq.com',2);
#案例4:可以省略字段列表,默认对所有字段进行插入操作
INSERT INTO stuinfo VALUES(8,'熊大','女','lin@126.com',12,3);
- 数据的修改
/*
语法:
update 表名 set 字段名 = 新值,字段名 = 新值,...
where 筛选条件;
*/
#案例1:修改年龄<20的专业编号为3号,且邮箱更改为 xx@qq.com
UPDATE stuinfo SET majorid = 3,email='xx@qq.com'
WHERE age<20;
- 数据的删除
/*
语法:
方式1:delete语句 -- 删除指定筛选条件的列表项
delete from 表名 where 筛选条件;
方式2:truncate语句 -- 一次性清除所有数据
truncate table 表名;
两种方式的区别:
1.delete可以添加where条件,truncate不能添加where条件,且一次性清除所有数据
2.truncate的效率较高
3.如果删除带自增长列的表:
使用delete删除后,新插入的数据,记录从断点处开始
使用truncate删除后,新插入的数据,记录从1开始
4.delete删除数据,会返回受影响的行数
truncate删除数据,不会返回受影响的行数
5.delete删除数据,可以支持事务回滚
truncate删除数据,不可以支持事务回滚
补充:设置自增长列、
1、自增长列要求必须设置在一个键上,比如主键或唯一键
2、自增长列要求数据类型为字符型
3、一个表至多有一个增长列
*/
#案例1:删除姓李所有信息
DELETE FROM stuinfo WHERE stuname LIKE '李%';
#案例2:删除表中所有数据
TRUNCATE TABLE stuinfo ;
作者: "无问西东"
出处:https://www.cnblogs.com/csyh/p/12398581.html
版权:本文采用「署名-非商业性使用-相同方式共享 4.0 国际」知识共享许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!