1.概念(C)

数据操纵语言 DML (Data Manipulation Langua)是SQL语言的一个分类,用于对表的内容或者说数据进行增、删、改、查等操作。

通过以下几个关键字实现:

SELECT(查询) 、INSERT(插入)、 UPDATE(更新修改)、 DELETE(删除)

2.insert(插入):(A)

2.1 作用:

往表中插入数据。

2.2 方式:

1.元祖值式插入(一次插入一行)
语法:insert into 表(列1,列2...列n) values(值1,值2...值n);
例:

--一次插入一条记录
insert into emp (empno,ename,sal,deptno) values(9527,'华安',500,40); --需要往表中所有列都插入数据时,表后面的列可以不写
insert into emp values(9528,'秋香',null,9527,sysdate,100,null,40);

2.查询结果式(将子查询的结果插入到表中)
语法:insert into 表名 (子查询)

例:

--首先创建一个emp的临时复制表用于实验操作
create table emp_temp as select *from emp where 1 =2;
--将子查询的结果插入到表中
insert into emp_temp (select * from emp);

3.delete(删除):(A)

3.1 作用 :

删除表中的数据。

3.2 语法:

delete from 表名 where 过滤条件(删除满足条件的)
例:

--from 可以省略不写
delete emp_temp where empno=9528;
--没有 where 过滤条件就会删除所有数据
delete emp_temp;

4.update(更新):(A)

4.1 作用:

修改表中的数据。

4.2 语法:

update 表名 set 列1=值1,列2=值2,...,列N=值N where 过滤条件(判断修改哪一条记录)

例:

--给编号为9527的涨工资20%,这里没有过滤条件的话就变成给所有人涨20%
updata emp_temp set sal=sal*1.2 where empno=9527;

5.事务(B)

5.1 概念:

事务(Transaction)是一个操作序列。这些操作要么都做,
要么都不做,是一个不可分割的工作单位,是数据库环境中的
逻辑工作单位。

5.2 作用:

事务是为了保证数据库的完整性。例如:
A给B转账,需要先减掉A的账户余额再加到B的账户上,这两个操作是一个整体,
不可能扣掉A的钱不给B加上,或者只给B加没有扣掉A的钱。
也就是,一个事务每项任务都必须正确执行。如果有任一任务执行失败,则整个事务就会被终止。此前对数据所作的任何修改都将被撤销

5.3 事务的开始与结束:

在oracle中,没有事务开始的语句。
一个事务起始于一条DML(Insert、Update和Delete )语句。
结束于以下的几种情况:
–用户显式执行Commit语句提交操作或Rollback语句回退。
–当执行DDL(Create、Alter、Drop)语句事务自动提交。
–用户正常断开连接时,事务自动提交。
–系统崩溃或断电时事务自动回退。

5.4Commit(提交)和Rollback(回退):
Commit :事务成功结束,提交数据到数据库,更新数据库内容
Rollback:事务不成功结束,事务中的操作被撤销,回到事务开始前的状态

5.5 事务四大特征(ACID):(C)

1. 原子性(Atomicity) 一个原子事务要么完整执行,要么干脆不执行。
也就是,一个事务每项任务都必须正确执行。如果有任一任务执行失败,则整个事务就会被终止。此前对数据所作的任何修改都将被撤销
2. 一致性(Consistency) 一致性代表了底层数据存储的完整性。就像上面第2点举的例子,A钱减了B钱才能加,两边的数据保持一致
3. 隔离性(Isolation),在事务或工作单元执行完毕之前,其所访问的数据不能受系统其他部分的影响。(类似于线程安全)
4. 持久性(Durability) 持久性表示在某个事务的执行过程中,对数据所作的所有改动都必须在事务成功结束前保存至某种物理存储设备。这样可以保证,所作的修改在任何系统瘫痪时不至于丢失。

DML(数据操纵语言)的更多相关文章

  1. DML 数据操纵语言

    1.INSERT(插入)语言结构 INSERT INTO table(表名)(要插入的列名) VALUES(要插入的具体值): table:要插入数据的表的表名 column[,column]:表中要 ...

  2. Hive 官方手册翻译 -- Hive DML(数据操纵语言)

    由 Confluence Administrator创建, 最终由 Lars Francke修改于 八月 15, 2018 原文链接 https://cwiki.apache.org/confluen ...

  3. DML数据操纵语言

    --创建表T_HQ_BM2 --create table t_hq_bm2 as select * from t_hq_bm; commit; --添加行内容 --insert into t_hq_b ...

  4. (让你提前知道软件开发33):数据操纵语言(DML)

    文章2部分 数据库SQL语言 数据操纵语言(DML) 数据操纵语言(Data Manipulation Language,DML)包含insert.delete和update语句,用于增.删.改数据. ...

  5. MySQL之数据操纵语言(DML)

    数据操纵语言(DML) 数据操纵语(Data Manipulation Language),简称DML. DML主要有四个常用功能. 增 删 改 查 insert delete update sele ...

  6. 数据库原理及应用-SQL数据操纵语言(Data Manipulation Language)和嵌入式SQL&存储过程

    2018-02-19 18:03:54 一.数据操纵语言(Data Manipulation Language) 数据操纵语言是指插入,删除和更新语言. 二.视图(View) 数据库三级模式,两级映射 ...

  7. oracle数据操纵语言(DML)data manipulation language

    数据库操纵语言(DML)用于查询和操纵模式对象中的数据,它不隐式地提交当前事务. SELECTINSERTUPDATEDELETECALLEXPLAIN PLANLOCK TABLEMERGE使用算术 ...

  8. 30442数据操纵语言DML

    5.5 SQL的数据操纵功能 5.5.1 数据插入 使用CREATE语句创建的数据表还只是一个“空壳”,表中没有任何数据.利用SQL语言提供的INSERT语句可以完成向数据表插入数据的任务. INSE ...

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

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

随机推荐

  1. Total Command使用笔记

    一.快键键(基于水晶2右)以下数字小键盘无效 Tab 左右窗口切换 Ctrl+d 进入工作目录ctrl+d+数字 指定目录alt+←/→ 后退/前进目录ctrl+\ 跳转到根目录Ctrl+b,不分层级 ...

  2. CentOS 6 安装Hadoop集群

    hadoop2.6.4安装包(链接:https://pan.baidu.com/s/15qHpdoLBQHP4HdxOJzNcsg 密码:5hel) 1.准备Linux环境 1.0先将虚拟机的网络模式 ...

  3. spring 整合 shiro框架

    shiro是用来干嘛的?从它的官网上(http://shiro.apache.org/)基本可以了解到,她主要提供以下功能: (1)Authentication(认证) (2)Authorizatio ...

  4. JDBC、DBUtils

    JDBC(Java Data Base Connectivity) java数据连接 可以为多种数据库,提供统一访问,它由一组用java语言编写的类和接口组成,也是java访问数据库的规范.   my ...

  5. arcis api for js 值 3.17 本地部署

    1. 引言 在学习 ArcGIS API 的过程中,如果我们引用在线的 API,在没有网络或者网络差的情况下,会影响到我们的学习效率,本篇文章就是为了解决这个问题.下载 ArcGIS API 之后,部 ...

  6. DX11 Without DirectX SDK--02 渲染一个三角形

    回到 DirectX11--使用Windows SDK来进行开发 目前暂时没有写HLSL具体教程的打算,而是着重于如何做到不用DirectX SDK来进行渲染.除此之外,这里也没有使用Effects框 ...

  7. MySQL中横表和竖表相互转换

    一  竖表转横表 1. 首先创建竖表 create table student ( id varchar(32) primary key, name varchar (50) not null, su ...

  8. PAT1037:Magic Coupon

    1037. Magic Coupon (25) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue The magi ...

  9. bootstrap模态对话框(最简单)

    根据公司的需求,需要一个对话框来返回给客户的失败原因,刚刚开在百度上搜了老半天,嫩是没有搜索一个自己想要的,后来发送私信给一个博友,经过他哪里找到了自己想要的答案,废话不多说直接看源码: <!D ...

  10. Exchanger兄弟线程间数据信息交换

    一.简述 Exchanger可以在两个线程之间交换数据,只能是2个线程,他不支持更多的线程之间互换数据.当线程A调用Exchange对象的exchange()方法后,他会陷入阻塞状态,直到线程B也调用 ...