1.DDL(数据定义语言)
DDL部分可以回顾上一篇文章:mysql语法-DDL(create、drop、alter)
2.DML(数据操作语言)
对表数据(一行一行的数据)的操作,会更改数据,但不会改变结构。
都是在事务环境中实现。
- 插入
-
向表中所有字段插入数据
insert into 表名 values(字段值1,字段值2,...);
values值的个数和顺序都必须和表字段顺序保持一致。 -
向表中部分字段插入数据
前提:不选择插入的字段允许为空。
insert into 表名(字段名1,字段名2...) values(字段值1,字段值2,...);
values值的个数和顺序必须和列出来的字段名保持一致。 -
批量插入数据
insert into 表名(字段名1,字段名2...) values(字段值1,字段值2,...),(字段值1,字段值2,...);
values值括号之间用逗号隔开,代表一行记录,多个括号代表插入多条记录。
-
修改
update 表名 set 列名1=值1,列名2=值2...[where 条件];
没有where字句就代表对整张表的记录进行修改。 -
删除
-
delete
delete from 表名 [where 条件];
只删除数据,不修改表结构,不重置自增。(逐行删除)
若表格中有auto_increment,有5条id从1到5的记录,delete删除所有/某些记录后,新增记录从id=6继续。
若想id记录从1开始,需要手动插入id字段并设置为1。 -
truncate
truncate table 表名;
清空数据,不修改表结构,重置自增,删除速度比delete快。(效率更高)
若表格中有auto_increment,有5条id从1到5的记录,truncate清空所有记录后,新增记录从id=1开始。 -
drop
drop table 表名;
表结构、结构文件和数据文件全部删除。(删除整张表)
3.DQL(数据查询语言)
DML部分可以查看这两篇文章:
select基础查询
select高级查询