简介

DML语言就是数据操作语言

主要操作

  1. 插入:insert
  2. 修改:update
  3. 删除:delete

插入语句

语法

方式一

  1. 支持多个:insert into 表名(列名.......) values(值.......),(值.......);
  2. insert into 表名(列名.......) value(值.......);

方式二

  1. insert into 表名 set 列名1=值1, set 列名1=值1;

区别

方式一支持插入多行,方式二不支持;

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

注意

  1. 不能为空的列必须插入值

  2. 可为空的列插入值方式

    1. 如果不指定,数据库自动加入默认值

修改语句

修改单表

语法

update 表名 set 列名=值,列名=值 where 条件;

修改多表

语法

update user u inner jion user_address ua on u.id = ua.user_id

set ua.address='浙江杭州' where u.id = 1;

删除语句

DELETE

语法

单表:

delete from 表名 where 筛选条件;(如不加条件,默认删除全表)

多表:

sql 92语法:

delete 别名a, 别名b

from 表1 别名a, 表2 别名b

where 连接条件 and 筛选条件;

sql 99语法:

delete 别名1,别名2

from 表1 别名1 inner|left|right join 表2 别名2 on 连接条件

where 筛选条件;

TRUNCATE

语法

truncate table 表名; (不能加条件,删除全表)

两种删除总结

  1. delete 可以加条件,truncate 不能加条件;
  2. 如果想要清空表记录,使用 truncate 效率更高;
  3. 假如要删除的表中有自增长列,如果用delete删除,再插入数据,自增长的值从断点处开始,而 truncate 删除后,再插入数据,自增长列的值从1开始;
  4. truncate 删除没有返回值,delete 支持返回值(返回值指的是,几行受影响);
  5. truncate 没有事务回滚,delete 支持事务回滚。

四、DML语言的更多相关文章

  1. SQL的四种语言和数据库范式

    1. SQL的四种语言 DDL(Data Definition Language)数据库定义语言 CREATE ALTER DROP TRUNCATE COMMENT RENAME DML(Data ...

  2. Oracle-06:DML语言数据表的操作

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 开篇放上一个SQL脚本,供测试使用 create table DEPT ( deptno ) not null ...

  3. Oracle存储过程中不支持DML语言的解决方法(针对遇见的DROP关键字)

    ---存储过程中的原语句: ---删除表 DROP TABLE A_NEWTDDATA; --报错 经查询:存储过程不支持DML语言: 解决方法: execute immediate 'DROP TA ...

  4. 5 DML语言

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  5. 数据库01创建表和DML语言

    楼主用的数据库时mysql,用的时navacat for mysql. 数据库层面: 1.显示所有数据库 show databases; 2.创建数据库,名字叫lyh,编码为utf-8 create ...

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

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

  7. MySQL笔记总结-DML语言

    DML语言 插入 一.方式一 语法: insert into 表名(字段名,...) values(值,...); 特点: 1.要求值的类型和字段的类型要一致或兼容 2.字段的个数和顺序不一定与原始表 ...

  8. DML语言(数据操纵语言)

    #DML语言/*数据操作语言:插入:insert修改:update删除:delete */ #一.插入语句#方式一:经典的插入/*语法:insert into 表名(列名,...) values(值1 ...

  9. 手把手和你一起实现一个Web框架实战——EzWeb框架(四)[Go语言笔记]Go项目实战

    手把手和你一起实现一个Web框架实战--EzWeb框架(四)[Go语言笔记]Go项目实战 代码仓库: github gitee 中文注释,非常详尽,可以配合食用 这一篇文章主要实现路由组功能.实现路由 ...

随机推荐

  1. PAT 甲级 1017 Queueing at Bank (25 分)(模拟题,有点思维小技巧,第二次做才理清思路)

    1017 Queueing at Bank (25 分)   Suppose a bank has K windows open for service. There is a yellow line ...

  2. [C++]哈夫曼树(最优满二叉树) / 哈夫曼编码(贪心算法)

    一 哈夫曼树 1.1 基本概念 算法思想 贪心算法(以局部最优,谋求全局最优) 适用范围 1 [(约束)可行]:它必须满足问题的约束 2 [局部最优]它是当前步骤中所有可行选择中最佳的局部选择 3 [ ...

  3. Swift加载Xib创建的Controller

    Xib显示如下: <注意箭头处即可> 按住Control键,点击Files'owner拖动到View即可. 加载该控制器如下: func registerClick() { let reg ...

  4. react 组件创建

    /** * 数据屏蔽 * Created by 2016-12-02. */ import React, {Component} from 'react'; export default class ...

  5. 【ARM-LInux开发】如何运行wayland

    Running Wayland 原文:https://jan.newmarch.name/Wayland/RunningWayland/ skip table of contents Show tab ...

  6. 如何使用thymeleaf显示控制传递过来的数据

    实例 <p th:text="'Hello, ' + ${name} + '!'" /> name为要显示的参数名

  7. CQRS1

    CQRS之旅——旅程1(我们的领域:Contoso会议管理系统)   旅程1:我们的领域:Contoso会议管理系统 起点:我们从哪里来,我们带来了什么,谁将与我们同行?“ 只要前进,我愿意去任何地方 ...

  8. webpack4实例

    webpack现在已经成为前端很多的打包器.网上关于webpack的相关文章也是很多,本文主要是根据自己的学习步骤来记录的,进行简单的webpack实例的讲解. 注意:一定要确定安装的node.js的 ...

  9. PHP新特性

    1.太空船操作符<=> 2.变量类型限定 3.$a = $b??$c 4.常量数组,define($arr,['a','b']) 5.namespace批量导入 等等

  10. upw,c#,代码实现关闭,重启应用

    微软为uwp直接提供了这些API,可以很容易的直接进行调用 关闭 using Windows.ApplicationModel.Core; CoreApplication.Exit(); or usi ...