四、DML语言
简介
DML语言就是数据操作语言
主要操作
- 插入:insert
- 修改:update
- 删除:delete
插入语句
语法
方式一
- 支持多个:insert into 表名(列名.......) values(值.......),(值.......);
- insert into 表名(列名.......) value(值.......);
方式二
- insert into 表名 set 列名1=值1, set 列名1=值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 表名; (不能加条件,删除全表)
两种删除总结
- delete 可以加条件,truncate 不能加条件;
- 如果想要清空表记录,使用 truncate 效率更高;
- 假如要删除的表中有自增长列,如果用delete删除,再插入数据,自增长的值从断点处开始,而 truncate 删除后,再插入数据,自增长列的值从1开始;
- truncate 删除没有返回值,delete 支持返回值(返回值指的是,几行受影响);
- truncate 没有事务回滚,delete 支持事务回滚。
四、DML语言的更多相关文章
- SQL的四种语言和数据库范式
1. SQL的四种语言 DDL(Data Definition Language)数据库定义语言 CREATE ALTER DROP TRUNCATE COMMENT RENAME DML(Data ...
- Oracle-06:DML语言数据表的操作
------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 开篇放上一个SQL脚本,供测试使用 create table DEPT ( deptno ) not null ...
- Oracle存储过程中不支持DML语言的解决方法(针对遇见的DROP关键字)
---存储过程中的原语句: ---删除表 DROP TABLE A_NEWTDDATA; --报错 经查询:存储过程不支持DML语言: 解决方法: execute immediate 'DROP TA ...
- 5 DML语言
body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...
- 数据库01创建表和DML语言
楼主用的数据库时mysql,用的时navacat for mysql. 数据库层面: 1.显示所有数据库 show databases; 2.创建数据库,名字叫lyh,编码为utf-8 create ...
- MySQL的DML语言(增删改)
MySQL的DML语言(增删改) 补充说明,外键:不要使用外键,一切外键概念都在应用层解决. 补充说明,数据库的列,也就是字段名,尽量带上飘符号` 数据库存在的意义:数据存储和数据管理. 数据库:行( ...
- MySQL笔记总结-DML语言
DML语言 插入 一.方式一 语法: insert into 表名(字段名,...) values(值,...); 特点: 1.要求值的类型和字段的类型要一致或兼容 2.字段的个数和顺序不一定与原始表 ...
- DML语言(数据操纵语言)
#DML语言/*数据操作语言:插入:insert修改:update删除:delete */ #一.插入语句#方式一:经典的插入/*语法:insert into 表名(列名,...) values(值1 ...
- 手把手和你一起实现一个Web框架实战——EzWeb框架(四)[Go语言笔记]Go项目实战
手把手和你一起实现一个Web框架实战--EzWeb框架(四)[Go语言笔记]Go项目实战 代码仓库: github gitee 中文注释,非常详尽,可以配合食用 这一篇文章主要实现路由组功能.实现路由 ...
随机推荐
- Delphi实现树型结构具体实例
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, ...
- idea控制台中文乱码“淇℃伅”
方法一:找到tomcat的conf目录下的logging.properties,将输出到控制台的编码改为GBK java.util.logging.ConsoleHandler.encoding = ...
- 微信小程序 左右分类列表
分类界面,左边是一级目录,右边是一级目录对应的二级目录,根据这个需求,我们数据设计的结构一定是数组嵌套数组,第一个数组包含一级目录数据,嵌套的数组包含的是二级目录的数据. wxml代码: <vi ...
- CG-CTF 南邮 综合题2
个人网站 http://www.wjlshare.tk 0x00前言 主要考了三块 第一块是文件包含获取源码 第二块是通过sql绕过注入获取密码 第三块是三参数回调后门的利用 做这题的时候结合了别人的 ...
- Hadoop 之 HDFS API操作
1. 文件上传 @Slf4j public class HDFSClient { @Test public void testCopyFromLocalFile() throws Exception{ ...
- 《鸟哥的Linux私房菜:服务器搭建篇》第一部分学习笔记
零.问题集 1. 我们购买网络时,有4M.5M.8M.10M乃至100M,运营商是如何控制每个用户的带宽的? 一.网络基础概念 1. 交换器与集线器最大的差异,在于交换器内有一个特别的内存, 这个内存 ...
- java 分解整数 【个 十 百 千】,获得个位、十位、百位数字
求一个数数的个位数,十位数,百位数及千位: int num = 53; int g = (num / 1) % 10; //个位 int s = (num / 10) % 10; //十位 int ...
- Netty源码剖析-发送数据
参考文献:极客时间傅健老师的<Netty源码剖析与实战>Talk is cheap.show me the code! 开始之前先介绍下Netty写数据的三种方式: ①:write:写到一 ...
- Timezone offset does not match system offset: 0 != -32400. Please, check your config files
apscheduler使用uWSGI的mule模块部署的时候报错, 因为系统时区和代码运行时区不一样导致. 解决办法:在初始化的时候指定上海的时区 scheduler = BlockingSchedu ...
- 列表推导:python2和python3中作用域的问题
python2中: x = 'my love' dummy = [x for x in 'ABC'] print x 此时x打印为:'C' python3中: x = 'my love' dummy ...