#DML语言
/*
数据操作语言
插入:insert
修改:update
删除:delete
*/ #一、插入语句
/*
语法:
insert into 表名(列名...)
values(新值...);
*/
USE girls; INSERT INTO beauty(id, NAME, sex, borndate, phone, photo, boyfriend_id)
VALUES(13, '唐艺昕', '女', '1990-4-23', '18988888888', NULL, 2); SELECT * FROM beauty; #可以为null的列,如何插入null值
#1、写列名,值为null;2、列直接不写 #列的顺序随便换,只要和值一一对应上即可
INSERT INTO beauty(NAME, sex, id, phone)
VALUES('蒋欣', '女', 16, '111'); SELECT * FROM beauty; #可以省略列名,但默认是所有列 #插入的方式二
/*
语法:
insert into 表名
set 列名=值, 列名=值, ...
*/
INSERT INTO beauty
SET id=19, NAME='刘涛', phone='999'; SELECT * FROM beauty; # 方式一可以插入多行,方式二不支持
/*
INSERT INTO 表名 (列名)
VALUES (), (), ()...
*/ #方式一支持子查询,方式二不支持
#把查询结果插入
INSERT INTO beauty(id, NAME, phone)
SELECT 26, '宋茜', '11809866'; SELECT * FROM beauty; #二、修改语句
/*
1、修改单表的记录
语法:
UPDATE 表名
SET 列=新值, 列=新值, ...
WHERE 筛选条件; 2、修改多表的记录
语法:
UPDATE 表1 别名
INNER|LEFT OUTTER JOIN 表2 别名
ON 连接条件
SET 列=值, ...
WHERE 筛选条件;
*/
#1、修改单表
#案例1:修改beauty表中姓唐的电话为100000
UPDATE beauty
SET phone = '100000'
WHERE NAME LIKE '唐%' AND id >= 0; # where后的条件需要包含主键 SET SQL_SAFE_UPDATES = 0; # 或者修改模式 SELECT * FROM beauty; #2、修改多表
#案例2:修改张无忌的女朋友的手机号为114
UPDATE beauty as b
INNER JOIN boys as bo
ON b.boyfriend_id = bo.id
SET b.phone = 114
WHERE bo.boyName = '张无忌'; SELECT * FROM beauty; #案例3:修改没有男朋友的女神的男朋友编号都为2号
#这个应该没必要连接
UPDATE beauty as b
LEFT OUTER JOIN boys as bo
ON b.boyfriend_id = bo.id
SET b.boyfriend_id = 2
WHERE bo.id IS NULL; SELECT * FROM beauty; #三、删除语句
/*
1、delete
语法:
delete from 表名
where 筛选条件;
筛选满足的条件的行 truncate table 表名;
整表记录全删了,不允许用where 2、多表删除
语法:
DELETE 表1的别名,表2的别名
FROM 表1 as 别名
INNER | LEFT OUTER JOIN 表2 as 别名
ON 连接条件
WHERE 筛选条件; */
#案例1:删除手机号以9结尾的信息
# DELETE FROM beauty WHERE phone LIKE '%9'; #案例2:删除张无忌的女朋友的信息
/*
DELETE b
FROM beauty as b
INNER JOIN boys as bo
ON b.boyfriend_id = bo.id
WHERE bo.boyName = '张无忌';
*/ #用delete删除后再插入数据,自增长列的值从断点开始
#用truncate删除后再插入数据,自增长列的值从1开始 # truncate删除不能回滚,delete删除可以回滚

  

mysql-11-DML的更多相关文章

  1. [Sqoop]利用sqoop对mysql运行DML操作

    业务背景 利用sqoop对mysql进行查询.加入.删除等操作. 业务实现 select操作: sqoop eval \ --connect jdbc:mysql://127.0.0.1:3306/m ...

  2. mysql 5.7 的安装配置与 navicat premium for mysql 11 的破解使用

    再安装mysql5.7 或以上的版本出现了一些问题,现在总结下,希望能给初入学习mysql的人一下帮助,大牛就不要来嘲笑小弟我了 首先准备如下: 1.下载mysql 5.7,下载地址:https:// ...

  3. 利用sqoop对mysql执行DML操作

    业务背景 利用Sqoop对MySQL进行查询.添加.删除等操作. 业务实现 select操作: sqoop eval \ --connect jdbc:mysql://127.0.0.1:3306/m ...

  4. MySQL的DML常用语法格式

    MySQL的DML常用语法格式 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们知道MySQL的查询大致分为单表查询,多表查询以及联合查询.多表查询,顾名思义,就是查询的结果可能 ...

  5. MySQL的DML语言(增删改)

    MySQL的DML语言(增删改) 补充说明,外键:不要使用外键,一切外键概念都在应用层解决. 补充说明,数据库的列,也就是字段名,尽量带上飘符号` 数据库存在的意义:数据存储和数据管理. 数据库:行( ...

  6. Navicat for Mysql 11.2 的下载,安装与激活

    1. Navicat for Mysql 11.2 的下载 链接:https://pan.baidu.com/s/1w54F-MYTLuy4TQwpzUE7bQ       密码:zsfu 2.下载的 ...

  7. (MariaDB/MySQL)之DML(1):数据插入

    本文目录: 1.insert和replace插入数据 1.1 insert into values() 1.2 insert into set 1.3 insert into select_state ...

  8. (MariaDB/MySQL)之DML(2):数据更新、删除

    本文目录:1.update语句2.delete语句 2.1 单表删除 2.2 多表删除3.truncate table 1.update语句 update用于修改表中记录. # 单表更新语法: UPD ...

  9. MySQL之DML语句(insert update delete)

    DML主要针对数据库表对象的数据而言的,一般DML完成: 插入新数据 修改已添加的数据 删除不需要的数据 1.insert into插入语句 //主键自增可以不插入,所以用null代替 ); //指定 ...

  10. mysql语句-DML语句

    DML语句 DML是指对数据库中表记录的操作,主要包括数据的增删改查以及更新,下面依次介绍 首先创建一张表:: 表名:emp 字段:ename varchar(20),hiredate date ,s ...

随机推荐

  1. SpringBoot启动注解源码流程学习总结

  2. ssm框架之springMVC拦截器

    1拦截器概述 1.1什么是拦截器? springMVC中的拦截器(Interceptor)类似于servlet中的过滤器(Filter),它主要用于拦截用户请求并作相应的处理.例如通过拦截器可以进行权 ...

  3. File类 -《学堂在线》

    File类的作用 ·创建.删除文件: ·重命名文件:判断文件的读写权限及是否存在: ·设置和查询文件的最近修改时间等: ·构造文件流可以使用File类的对象作为参数. //: FileTester.j ...

  4. python练习 - 系统基本信息获取(sys标准库)+ 二维数据表格输出(tabulate库)

    系统基本信息获取 描述 获取系统的递归深度.当前执行文件路径.系统最大UNICODE编码值等3个信息,并打印输出.‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮ ...

  5. 用android studio多渠道打包

    1. 官方教程 https://developer.android.com/studio/build/build-variants.html 2. 设置Build Types参数 打开 Project ...

  6. 持续部署入门:基于 Kubernetes 实现滚动发布

    前言 软件世界比以往任何时候都更快.为了保持竞争力,需要尽快推出新的软件版本,而不会中断活跃用户访问,影响用户体验.越来越多企业已将其应用迁移到 Kubernetes. 在 Kubernetes 中有 ...

  7. h5跳转微信公众号关注页面

    最近在做h5项目,有个需求是如果用户没有关注公众号,需要引导用户跳转至微信公众号关注页面 制作一个链接,点击该链接跳转到公众号关注页面. 1.从公众平台登进入公众号 2.点击开发>>开发者 ...

  8. Activiti7 流程变量(理论)

    什么是流程变量 流程变量在Activiti中是一个非常重要的角色,流程运转有时需要靠流程变量,业务系统和Activiti结合时少不了流程变量,流程变量就是Activiti在管理工作流时根据管理需要而设 ...

  9. TG

    telegram windous版 安装包 代理 安装好了,却没有网(ssr+PAC) 解决办法 汉化 在telegram 搜索 " zh_cn"

  10. cannary

    canary是Linux为防止栈溢出的一种保护机制,接着我们分析glibc对canary的实现过程,首先给出跟canary相关的调用栈: security_init()  //在elf/rtld.c中 ...