oracle学习笔记(四) DQL数据查询语言和TCL 事务控制语言
DML 数据管理语言 Data manage language
insert
, update
, delete
以及select
语句,不过,有人也把select
单独出来,作为DQL 数据查询语言 data query language
insert
,update
和delete
都需要执行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
- 事务是最小的工作单元,它作为一个整体进行操作, 此工作单元中的语句要么全部成功,要么全部失败不充许部分成功和部分失败
- 保证事务的整体成功或失败,称为事务控制
- 事务的四大特性ACID :
原子性(Atomicity )、一致性(Consistency )、隔离性(Isolation)、持久性(Durability ) - 用于事务控制的语句有:
- COMMIT - 提交并结束事务处理
- ROLLBACK - 撤销事务中已完成的工作
- SAVEPOINT – 标记事务中可以回滚的点
update student where num=10;
savepoint s1;
insert into student where num=11;
rollback s1; --回退到了s1,也就是之后的插入数据操作撤销了
commit;
oracle学习笔记(四) DQL数据查询语言和TCL 事务控制语言的更多相关文章
- Oracle学习笔记四 SQL命令(二):SQL操作语言类别
SQL分为下列语言类别 1.数据定义语言(DDL) Create.Alter.Drop 2.数据操纵语言(DML) Insert.Select.Delete.Update 3.事务控制语言(TCL) ...
- oracle学习笔记(四) DML数据控制语言和TCL 事务控制语言
DML 数据管理语言 Data manage language insert, update, delete以及select语句,不过,有人也把select单独出来,作为DQL 数据查询语言 data ...
- oracle 学习笔记(四)
1. SQL(高级查询) 1.1. 子查询 1.1.1. 子查询在WHERE子句中 在SELECT查询中,在WHERE查询条件中的限制条件不是一个确定的值,而是来自于另外一个查询的结果.为了给查询提供 ...
- Oracle学习笔记四
一.PL/SQL编程 游标(光标Cursor) 为什么使用游标 在写java程序中有集合的概念,那么在pl/sq中也会用到多条记录,这时候我们就要用到游标,游标可以存储查询返回的多条数据. 语法: C ...
- Oracle学习笔记_04_多表查询
一.概念: 1.多表连接有以下几种分法: (1)内连接 vs 外连接 (左.右.满) (2)等值连接 vs 不等值连接 (3)非自连 ...
- Oracle学习笔记(四)
六.约束 1.约束的作用 定义规则:什么数据可以输入,什么不可以 确保完整性:数据的精确性和可靠性 2.Oracle五个重要的约束: 非空约束.主键约束.外键约束.检查约束.唯一约束. (1)非空约束 ...
- Oracle学习笔记(5)——查询
基本查询语句 SELECT [DISTINCT] column_name1,...|* FROM table_name [WHERE conditions] 在SQL*PLUS中设置格式 更改显示字段 ...
- oracle学习笔记(十三) 查询练习(三) 子查询查询
子查询练习 create table empployee_demo( empno number(4) not null primary key, --员工编号,主键 ename varchar2(10 ...
- oracle学习笔记(十) 查询练习(一)
查询练习一 表创建 create table employee as select * from soctt.emp ; --记得授权 sysdba用户登录 grant select on scott ...
随机推荐
- python 模块之lxml 防xss攻击
Use lxml.html.clean! It's VERY easy! from lxml.html.clean import clean_html print clean_html(html) S ...
- 说说new 和 malloc()
熟悉c++的朋友应该都知道,c++提供给了程序员与硬件打交道的可能性,比如说内存管理.一个高水平的c++程序员可以将c++程序的性能优化到极致,榨干硬件资源.而现在我想说说与内存管理有关的new 和 ...
- WebGL three.js学习笔记 自定义顶点建立几何体
自定义顶点建立几何体与克隆 Three.js本身已经有很多的网格模型,基本已经够我们的使用,但是如果我们还是想自己根据顶点坐标来建立几何模型的话,Three.js也是可以的. 基本效果如图: 点击查看 ...
- HTML5和CSS3的新特性
html5的新特性 添加了用于媒介回放的 <video>,<audio> 元素 添加了语义标签譬如 header.footer.nav 等等元素 添加了用于绘画的 canvas ...
- 怎么让DIV在另一个DIV里靠底部显示?
可以使用css的position属性的绝对定位. 拓展知识 position 属性指定了元素的定位类型. position 属性的五个值: static:HTML元素的默认值,即没有定位,元素出现在正 ...
- 把时间留给重要的事——Markdown 模板功能上线
你是否遇到过因为同事在任务中过于放飞自我而感到头疼?或者经历过因为内容描写的不系统而导致关键信息被忽视? 现在,CODING Markdown 模板功能将帮助你解决这些困扰. 功能介绍 CODING ...
- 2025战略,中秋送福利!免费开源ERP Odoo Windows 一键傻瓜式安装版发布
概述 为了帮助更多的小白,能够快速的体验Odoo的强大功能,针对国内大多数小白用户无法快速直接体验Odoo的尴尬,开源智造呕心沥血,历经数百次的测试和整合终于赶在中秋节这天将Odoo所需要的复杂运行环 ...
- 微信小程序 人脸识别登陆模块
微信小程序---人脸识别登陆的实现 关键词:微信小程序 人脸识别 百度云接口 前言 这是一篇关于一个原创微信小程序开发过程的原创文章.涉及到的核心技术是微信小程序开发方法和百度云人脸识别接口.小程序的 ...
- 3星|《绩效使能:超越OKR》:较全较新资料汇编,华为实施经验少
全书是关于绩效管理与OKR的比较新比较全的资料汇编.从泰勒的科学管理说起,一直到现代的KPI.最近的OKR.梳理了工业革命以来重要的绩效管理思想的具体方法.适应情况,详细讲OKR的来龙去脉.适应情况. ...
- 量化投资技术分析工具---ipython使用
量化投资实际上就是分析数据从而做出决策的过程python数据处理相关模块NumPy:数组批量计算pandas:灵活的表计算Matplotlib:数据可视化 学习目标:用NumPy+pandas+Mat ...