DML 数据管理语言 Data manage language

insert, update, delete以及select语句,不过,有人也把select单独出来,作为DQL 数据查询语言 data query language

insert,updatedelete都需要执行commit才能将数据真正写入到数据库中

select 查询

select语法:
select 字段列表:empno,ename,job....
from 表名1 [,table2]
where [条件:列名=值]
[group by 列名,列名2..] 分组统计查询
[order by 列名1 asc/desc] [,列名2 asc/desc]:
/*
where子名: 限定(筛选)查询结果,多个条件可使用and | or 连接多个查询条件
order by子名:对结果排序;asc升序,desc降序,默认升序
distinct: 消除重复列
*/

补充:

--下面两个语句等同
select s.* from student s;
select * from student s;
--查询的结果多出一列address
select s.*,address from student s
--需要知道某公司的员工的所有工作有哪些,就是使用distinct清除掉重复的
select distinct job from employee;
--取个别名 my job 别名如果有空格的就得用双引号,否则语法会有错误
select distinct job as "my job" from employee;
select distinct job as my_job from employee;
--求总记录数,使用count函数
select count(*) from employee;

高级查询之后补充联合查询..

insert 插入

insert语法1:
INSERT INTO <table_name>[(column...list)]
VALUES(value...list) insert语法2:
INSERT INTO <table_name> [(cloumn_list)]
SELECT column_names FROM <other_table_name>;
--插入一套数据,该数据只有列名1和列名2有值,得对应
insert into $tablename$(列名1,列名2) values(列名1 值1,列名2 值2)
--默认不写,得写完,得对应
insert into $tablename$ values(列名1 值1,列名2 值2...) insert into $tablename$.emp (几个列名) values(与列名保持一致) --字符串是单引号
commit; --不提交的话,放在数据缓存区中,只能在当前会话可以查询得到,其他会话Sention是查询不到的
roolback; --回滚 --把查询的结果插入到表中,列的顺序一一对应
insert into tablename
select * from table2name;

update 修改(更新)

语法:
UPDATE <table_name> SET <字段名1>=值1, <字段名2>=值2,…….
WHERE <条件1> AND[OR] <条件2>.......
update student set age=10
where num = 10; --如果可以用主键作条件那最好就是用主键去更新,and or 多重条件 update student set age = age+1
where num = 10;

delete 删除

语法:
DELETE [FROM] <table_name> WHERE <条件>
delete student where num = 10;

事务控制语言:TCL (commit, rollback, savepoint)

事务控制语言:TCL: Transaction Controll Language

  1. 事务是最小的工作单元,它作为一个整体进行操作, 此工作单元中的语句要么全部成功,要么全部失败不充许部分成功和部分失败
  2. 保证事务的整体成功或失败,称为事务控制
  3. 事务的四大特性ACID :

    原子性(Atomicity )、一致性(Consistency )、隔离性(Isolation)、持久性(Durability )
  4. 用于事务控制的语句有:
    • COMMIT - 提交并结束事务处理
    • ROLLBACK - 撤销事务中已完成的工作
    • SAVEPOINT – 标记事务中可以回滚的点
update student where num=10;
savepoint s1;
insert into student where num=11;
rollback s1; --回退到了s1,也就是之后的插入数据操作撤销了
commit;

oracle学习笔记(四) DQL数据查询语言和TCL 事务控制语言的更多相关文章

  1. Oracle学习笔记四 SQL命令(二):SQL操作语言类别

    SQL分为下列语言类别 1.数据定义语言(DDL) Create.Alter.Drop 2.数据操纵语言(DML) Insert.Select.Delete.Update 3.事务控制语言(TCL) ...

  2. oracle学习笔记(四) DML数据控制语言和TCL 事务控制语言

    DML 数据管理语言 Data manage language insert, update, delete以及select语句,不过,有人也把select单独出来,作为DQL 数据查询语言 data ...

  3. oracle 学习笔记(四)

    1. SQL(高级查询) 1.1. 子查询 1.1.1. 子查询在WHERE子句中 在SELECT查询中,在WHERE查询条件中的限制条件不是一个确定的值,而是来自于另外一个查询的结果.为了给查询提供 ...

  4. Oracle学习笔记四

    一.PL/SQL编程 游标(光标Cursor) 为什么使用游标 在写java程序中有集合的概念,那么在pl/sq中也会用到多条记录,这时候我们就要用到游标,游标可以存储查询返回的多条数据. 语法: C ...

  5. Oracle学习笔记_04_多表查询

    一.概念: 1.多表连接有以下几种分法: (1)内连接           vs          外连接 (左.右.满) (2)等值连接        vs         不等值连接 (3)非自连 ...

  6. Oracle学习笔记(四)

    六.约束 1.约束的作用 定义规则:什么数据可以输入,什么不可以 确保完整性:数据的精确性和可靠性 2.Oracle五个重要的约束: 非空约束.主键约束.外键约束.检查约束.唯一约束. (1)非空约束 ...

  7. Oracle学习笔记(5)——查询

    基本查询语句 SELECT [DISTINCT] column_name1,...|* FROM table_name [WHERE conditions] 在SQL*PLUS中设置格式 更改显示字段 ...

  8. oracle学习笔记(十三) 查询练习(三) 子查询查询

    子查询练习 create table empployee_demo( empno number(4) not null primary key, --员工编号,主键 ename varchar2(10 ...

  9. oracle学习笔记(十) 查询练习(一)

    查询练习一 表创建 create table employee as select * from soctt.emp ; --记得授权 sysdba用户登录 grant select on scott ...

随机推荐

  1. ToB蓝海的台阶-PaaS,SaaS技术详解

    前言 随着大量SaaS公司进入市场,我们看到颠覆性的软件服务以各种方式进入企业流程-从营销工具到支付系统.随着SaaS帮助优化业务流程,实现更流畅和自动化的运营,风险投资公司首先潜入池中寻找最优秀和最 ...

  2. 离线安装mysql数据库

    开源数据库mysql,目前使用很广泛.作为程序员开发项目时,与关系型数据库打交道最多的估计也是mysql了.那么本文首先讲解如何离线安装mysql数据库,毕竟有很多项目部署在内网. 1.离线安装 本人 ...

  3. 金三银四,今年Python就业前,看看这篇文章找找感觉

    Python就业行情和前景分析之一爬取数据 最近Python大热,就想要分析一下相关的市场需求,看一下Python到底集中在哪些城市,企业对Python工程师的一些需求到底是怎样的,基于此,爬取了国内 ...

  4. xamarin android如何将Java.Lang.Object类型转成C#类型

    问题起源 其实这个标题也可以换一个更准确一点,因为我遇到的问题是: xamarin android中的Class继承了Java.Lang.Object ,将json序列化成c#类型时发现无法赋值,序列 ...

  5. 基础测试jmeter5.0+badboy(从小白到入门)

    1]测试工具jmeter环境安装 1.1]安装jdk环境 1:必须安装jdk8.0(我尝试安装最新版本不行,好像当时没有配置好.之后安装8.0遍可以正常运行)下载地址:单击此段 配置jdk环境:鼠标右 ...

  6. 在做关于NIO TCP编程小案例时遇到无法监听write的问题,没想到只是我的if语句的位置放错了位置,哎,看了半天没看出来

    在做关于NIO TCP编程小案例时遇到无法监听write的问题,没想到只是我的if语句的位置放错了位置,哎,看了半天没看出来 贴下课堂笔记: 在Java中使用NIO进行网络TCP套接字编程主要以下几个 ...

  7. html基础复习

    1.标签选择器   div{}   2.类选择器   .one class="one"   3.id选择器(定义+调用)   #one{} id="one"   ...

  8. h5实现实时时钟

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"/> <meta nam ...

  9. Linux 初始环境配置 以及避坑 (详细)

    没事儿喜欢自己装个虚拟机捣鼓捣鼓,经过几次装一些Linux 经验, 有时候  电脑了 .想重新系统了,又要重新去配置环境, 有时候又要去查很多很多命令 . 记录分享下Linux 下配置开发环境以及桌面 ...

  10. July 06th. 2018, Week 27th. Friday

    Life has no limitations, except the ones you make. 生命无限,除非你自我设限. From Les Brown. There would be no l ...