简介

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. Spring Boot连接MySQL报错“Internal Server Error”的解决办法

    报错信息如下: {timestamp: "2018-06-14T03:48:23.436+0000", status: 500, error: "Internal Ser ...

  2. iOS-AVFoundation实现二维码(ios7以上,转载)

    关于二维码扫描有不少优秀第三方库: ZBar SDK 里面有详细的文档,相应介绍也非常多,如:http://rdcworld-iphone.blogspot.in/2013/03/how-to-use ...

  3. django ORM中的复选MultiSelectField的使用

    下载和介绍: https://pypi.org/project/django-multiselectfield/ 在django ORM的使用中,经常会出现选择的情况,例如: class person ...

  4. django 之(四) --- 级联|截流

    登陆注册 登陆注册实现 settings.py # redis配置 CACHES = { "default": { "BACKEND": "djang ...

  5. 在vue的element图片的上传及回调

    首先声明,本人用的是element组件写的图片的上传及回调,若非element本方法暂不支持. 下面开始正式讲图片的上传及回调.(本篇拒绝一切花里胡哨,都是干活,言辞粗糙,望请见谅) 1,elemen ...

  6. codevs 1039:数的划分

    http://codevs.cn/problem/1039/ 题目描述 Description将整数n分成k份,且每份不能为空,任意两种划分方案不能相同(不考虑顺序).例如:n=7,k=3,下面三种划 ...

  7. windows上OpenSSH服务安装及启动

    一.windows安装OpenSSH 1,下载openSSH windows版 GitHub下载链接 我安装的是64位版本 OpenSSH-Win64.zip 2,解压到C:\Program File ...

  8. 执行sudo命令时command not found的解决办法

    问题的原因: 在编译sudo包的时候默认开启了- -with-secure-path选项. 方法1: sudo vim /etc/sudoers,并在文件内增加这么一行:Defaults secure ...

  9. Java总复习内容

    StringBuffer定义时需要用正确的方式 例如: StringBuffer xxx = new StringBuffer("雯雯是猪"); 使用StringBuffer的连接 ...

  10. jquery(第一章)认识jquery

    Jquery对象就是通过JQuery包装DOM对象后产生的对象,在JQuery对象中无法使用DOM对象的任何方法. 1.4.2 JQuery对象的和DOM对象的互相转换 若获取的对象是JQuery对象 ...