DML 表数据:插入、删除、修改

1.SQL语言表数据插入

语法1:指定字段插入(推荐)

sql 复制代码
insert into 表名(字段1,字段2,...) values(值1,值2,...);

示例

sql 复制代码
create table user(
    id int primary key auto_increment,
    name varchar(20) not null,
    age int
);

insert into user(name, age) values ('张三', 18);

语法2:省略字段,必须填写全部列

要求:值顺序、数量和建表字段完全一致

sql 复制代码
insert into user values(1, '李四', 20);

语法3:批量插入多条数据

sql 复制代码
insert into user(name, age)
values
('王五', 21),
('赵六', 19);

插入注意事项

  1. 字符串、日期数据必须使用单引号包裹
  2. 值的数据类型必须和对应字段匹配
  3. auto_increment自增列可以不填写数值
  4. not null字段必须传入值,不能省略

2.SQL语言表数据删除

基础语法

sql 复制代码
delete from 表名 [where 条件];

示例1:按条件删除指定一条数据

sql 复制代码
delete from user where id = 1;

示例2:按条件批量删除多条符合条件数据

sql 复制代码
delete from user where age < 18;

⚠️重要警告

sql 复制代码
-- 无where条件,删除表中所有数据,谨慎使用
delete from user;

删除注意事项

  1. 删除尽量添加where条件,避免清空整张表
  2. delete只删除表内数据,不会删除数据表结构

3.SQL语言表数据修改

基础语法

sql 复制代码
update 表名 set 字段1=值1,字段2=值2 [where 条件];

示例1:修改单个字段

sql 复制代码
update user set name='小张' where id = 2;

示例2:同时修改多个字段

sql 复制代码
update user set name='小李', age=25 where id = 3;

⚠️重要警告

sql 复制代码
-- 无where条件,整张表所有数据全部更新,严禁随意执行
update user set age=20;

修改注意事项

  1. 修改语句必须添加where筛选条件
  2. set后可以同时设置多个字段,逗号隔开
  3. 字符串数值使用单引号

简短总结

新增:insert into

删除:delete from

修改:update ... set

delete、update 操作永远优先加上 where 条件

相关推荐
天衍四九-7 小时前
MySQL中如何定位慢查询?如果SQL语句执行很慢,如何分析和优化?
数据库·sql·mysql
尚久龙7 小时前
mysql-5.7.26-winx64的安装步骤
数据库·mysql
-SOLO-7 小时前
开发笔记-摸鱼输入法
笔记
实心儿儿7 小时前
MySQL 的安装
数据库·mysql·adb
程序员阿鹏9 小时前
为什么MySQL InnoDB选择B+树?
数据结构·数据库·b树·sql·mysql·算法·缓存
疯狂打码的少年10 小时前
【计算机网络】TCP/IP协议族(四层体系结构,与OSI对比)
网络·笔记·tcp/ip·计算机网络
xqqxqxxq10 小时前
AI Agent学习:Agent协作工具技术笔记(李博杰《深入理解 AI Agent》4.6观后总结)
笔记·学习
这个DBA有点耶12 小时前
非关系型数据库到底有几种?键值、文档、列族、图,一篇讲透
mysql·架构·nosql
彧azz12 小时前
数据结构:关于图的学习
c语言·数据结构·笔记·学习·算法
自小吃多12 小时前
高云 FPGA 添加时序约束笔记
笔记·fpga开发