Mysql--数据操作语言(DML)
定义:数据操作语言主要实现对数据库表中的数据进行操作,主要包括插入(insert)、更新(update)、删除(delete)、查询(select),本节主要介绍增删改。
数据准备:

一、数据的插入(insert)
基本语法:
insert into 表名(列名,...) values(值1,...);
插入的值的类型要与列的类型一直或者兼容
1、经典的插入
①基本的插入

②部分省略插入
颜值使用得默认值,id是自增长,默认可以省略。给主键赋值为null,插入数据表中自动赋值。


③全部省略插入 字段名全部省略

④字段的顺序可以调换


2、set方式插入
语法:insert into 表名 set 列名=值,列名=值;

3、两种插入方式的比较
①方式一支持插入多行,方式二不支持

②方式一支持子查询,方式二不支持

二、修改语句(update)
1.修改单表记录
update 表名set 列=新值,列=新值,... where 筛选条件;
2.修改多表记录
92语法
update 表1 别名,表2 别名 set 列 = 值,... where 连接条件 and 筛选条件;
99语法
update 表1 别名 inner|left|right join 表2 别名on 连接条件set 列=值,... where 筛选条件;
案例1 修改name 为f的电话为123456789
update beauty set phone = '123456789' where name ='f';
案例2 修改小美丽的魅力值为88
Update boy set userCP = 88 where name = “小美丽”;
案例3 修改boy为vvvv的beauty的phone值为5200
UPDATE boys bo INNER JOIN beauty b ON bo.id=b.boyfriend_id SET b.phone = "5200" WHERE bo.boyName = "vvvv";
三、删除语句(delete)
1.单表删除
delete from 表名 [where 筛选条件];
2.多表删除
92语法
delete 表1的别名,表2的别名from 表1 别名,表2 别名where 连接条件and 筛选条件;
99语法
delete 表1的别名,表2的别名from 表1 别名inner|left|right join 表2 别名 on 连接条件where 筛选条件;
3.truncate 语法:truncate table 表名;
案例1 删除name 为j的beauty的信息
DELETE FROM beauty WHERE name ="j";
案例2 删除name为vvvv的boy的beauty信息
delete b from boys bo inner join beauty b on bo.id=b.boyfriend_id where bo.boyName='vvvv';
案例3 删除name为dddd的boys和beauty的信息(多表删除)
DELETE bo,b FROM boys bo INNER JOIN beauty b ON bo.id=b.boyfriend_id WHERE bo.boyName='dddd';
4.delete 和 truncate的区别
①truncate删除效率高于truncate
②要删除的表中有自增长列,delete删除之后,再次插入时,从断点开始;truncate删除之后,再次插入时,从1开始。
③truncate删除没有返回值,delete删除有返回值。
④truncate删除不能回滚,delete删除可以回滚。
Mysql--数据操作语言(DML)的更多相关文章
- mysql数据操作语言DML
插入insert 插入方式1 语法: insert into 表名(列名,....) values(值1,....) 说明: 1.插入的值的类型要与列的类型一致或兼容 2.可以为null的值:①列写了 ...
- 数据操作语言DML与运算符
数据操作语言DML(添加,修改,删除) 1.添加数据 insert into insert into 表名 (字段列表) values (值列表),值列表要和字段列表按顺序匹配. insert int ...
- ODPS SQL <for 数据操作语言DML>
基本操作: 查询: SELECT [ALL | DISTINCT] select_expr, select_expr, ... FROM table_reference [WHERE where_co ...
- 26_ mysql数据操作语言:DELETE语句
-- DELETE语句 -- 删除10部门中,工龄超过20年的员工记录 DELETE FROM t_emp WHERE deptno=10 AND DATEDIFF(NOW(),hiredate)/3 ...
- MySQL数据操作与查询笔记 • 【第3章 DDL 和 DML】
全部章节 >>>> 本章目录 3.1 使用 DDL 定义数据库表结构 3.1.1 SQL 简介 3.1.2 维护数据库和创建数据表 3.2 使用 DDL 维护数据库表结构 ...
- SQL学习笔记四之MySQL数据操作
阅读目录 一 介绍 二 插入数据INSERT 三 更新数据UPDATE 四 删除数据DELETE 五 查询数据SELECT 六 权限管理 一 介绍 MySQL数据操作: DML =========== ...
- 6.1课堂笔记—DML(数据操作语言),DQL查询语句
一.DML(数据操作语言) InnoDB MyISAM 支持事务 不支持事务 不支持全文索引 支持全文索引 支持外键约束 不支持 命令查看默认存储引擎 show variables like '%st ...
- DML数据操作语言
DML数据操作语言 用来对数据库中表的数据记录进行更新.(增删改) 插入insert -- insert into 表(列名1,列名2,列名3...) values (值1,值2,值3...):向表中 ...
- MySQL数据操作与查询笔记 • 【目录】
持续更新中- 我的大学笔记>>> 章节 内容 第1章 MySQL数据操作与查询笔记 • [第1章 MySQL数据库基础] 第2章 MySQL数据操作与查询笔记 • [第2章 表结构管 ...
- mysql 数据操作 目录
mysql 记录的增删改查 mysql 数据操作 单表查询 mysql 数据操作 多表查询
随机推荐
- ReflectionUtil
import java.lang.reflect.Field; import java.lang.reflect.InvocationTargetException; import java.lang ...
- ros indigo install
http://wiki.ros.org/cn/indigo/Installation/Ubuntu
- Storm概念学习系列之storm的设计思想
不多说,直接上干货! storm的设计思想 在 Storm 中也有对流(Stream)的抽象,流是一个不间断的.无界的连续 Tuple(Storm在建模事件流时,把流中的事件抽象为 Tuple 即元组 ...
- SpringBoot | 第九章:Mybatis-plus的集成和使用
前言 本章节开始介绍数据访问方面的相关知识点.对于后端开发者而言,和数据库打交道是每天都在进行的,所以一个好用的ORM框架是很有必要的.目前,绝大部分公司都选择MyBatis框架作为底层数据库持久化框 ...
- OracleJDK与OpenJDK的区别和联系
OpenJDK原是SunMicrosystems公司为Java平台构建的Java开发环境(JDK)的开源版本,完全自由,开放源码.OracleJDK里面包含的JVM是HotSpotVM,HotSpot ...
- C#获得字符串首字符字母(大写)
/// <summary> /// 获得字符串首字符字母(大写): /// </summary> /// <param name="cnChar"&g ...
- erlang通讯解析浮点数的一些问题
这两天我弟弟遇到一个比较有意思的问题.他在前端协定数据协议的时候用到了float和double,所以他想问float和double在erlang后端中是如何解析的.我之前写协议也很少用到浮点数,所以也 ...
- html标签补充
<body>内常用标签 1.<div>和<span> <div></div> : <div>只是一个块级元素,并无实际的意义.主 ...
- Linux常用操作2
第1章 find命令扩展 转自:https://www.cnblogs.com/clsn/p/7520333.html 1.1 方法一 |xargs 通过|xargs将前面命令的执行结果传给后面. [ ...
- windows无法连接到打印机 操作失败,错误为0x00000002 解决方案
平时使用局域网打印机没有问题,今天突然脱机了,错误号为0x00000002 服务器上打印机一切正常,别人使用也一切正常. 最后,重启了Spooler服务后搞定. 重新链接打印机,搞定!