【MySQL】数据管理语言DML

数据管理语言DML(Data Manipulatioin language)

对象:表数据

关键词:insert、update、delete

1、INSERT新增

1.1 语法

# 格式一:表名后的字段可以不按照表中顺序放,但是值必须和字段对应。
INSERT INTO 表名【字段1,字段2...,字段n values(1,值2...,值n);
# 格式二:省略表名后的字段,但是值必须按照表字段顺序。
INSERT INTO 表名 values(1,值2...,值n);

1.2 特点

  1. 要求值的类型和字段的类型要一致或兼容
  2. 字段的个数和顺序不一定与原始表中的字段个数和顺序一致,但必须保证值和字段一一对应
  3. 假如表中有可以为null的字段,注意可以通过以下两种方式插入null值:①字段和值都省略、②字段写上,值使用null
  4. 字段和值的个数必须一致
  5. 字段名可以省略,默认所有列
  6. 方式一支持一次插入多行,语法如下:INSERT INTO 表名【(字段名,…)】 VALUES(值,…),(值,…),…;
  7. 方式一支持子查询,语法如下:INSERT INTO 表名 查询语句;

1.3 总结

  1. 项目中经常使用格式一,SQL清晰,明确,日志信息也比较直观。
  2. 项目中多使用批量插入,一般循环值,拼接多个,用逗号隔开。

2、UPDATE更新

2.1 语法

1、单表更新

UPDATE 表名 SET  = ,... WHERE 查询条件;

2、多表更新

#sql92语法 
UPDATE 
  1 别名,
  2 别名 
SET
   = ,
  ...
WHERE 连接条件 AND 筛选条件 ;

#sql99语法 
UPDATE 
  1 别名 
INNER | LEFT | RIGHT JOIN 2 别名 ON 连接条件
  SET  = ,
  ...
WHERE 筛选条件 ;

2.2 总结

项目中常用的更新也是批量的,单条数据的更新尽可能的入参条件和更新数据做成动态化的,可配置的,方便开发提高效率。


3、DELETE删除

3.1 语法

1、单表删除

DELETE FROM 表名 WHERE 筛选条件 ;

2、多表删除(级联删除)

# sql92语法 
DELETE 
  1的别名,
  2的别名 
FROM
  1 别名,
  2 别名 
WHERE 连接条件 AND 筛选条件 ;

# sql99语法 
DELETE 
  1的别名,
  2的别名 
FROM
  1 别名 
INNER | LEFT | RIGHT JOIN 2 别名 ON 连接条件 
WHERE 筛选条件 ;

3.2 总结

删除在项目中使用的并不多,一般都是对数据状态进行修改,使其不展示给用户。数据一般不轻易删除。

Related Posts

【MySQL】基础架构
【MySQL】SQL简介
© 2019 - 2022 · Home · Theme Simpleness Powered by Hugo ·