Oracle数据库SQL语句的分类
1986年10月,美国国家标准协会对SQL进行规范后,以此作为关系式数据库管理系统的标准语言,1987年在国际标准组织的支持下成为国际标准。不过各种通行的数据库系统其实在实践过程中都对SQL规范的作了某些编改和扩充。所以,实际上不同数据库系统之间的SQL不能完全相互通用。1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2和SQL/DS数据库系统中也实现了SQL。我们知道关系型数据库都遵循了ACID原则,且都统一的实现了SQL语句,以SQL语句为核心来实现数据的操作,在Oracle中的SQL语句与常见的数据库的SQL语句是有点不同的。
SQL简介:
SQL(Structured Query Language)又叫“结构化查询语言”,简称:SQL。SQL是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,是用于存取数据、查询数据、更新数据和删除数据的管理关系数据库系统语言。同时也是关系型数据库脚本文件的扩展名(.sql)。
Oracle中SQL的分类:
在Oracle中SQL的整体结构如下:
数据定义语言(DDL:Date Definition Language)
用来创建、修改或删除表对象(库对象),管理表对象(库对象)。
包含:CREATE(创建)、ALTER(修改)、DROP(删除)、TRUNCATE(清空)等。
数据操作语言(DML:Date Manipulation Language)
用来添加、更新和删除表对象内的数据。
包含:INSERT(插入)、UPDATE(修改)、DELETE(删除)、MERGE(合并新旧数据)等。
数据查询语言(DQL:Date Query Language)
用来检索(查看)数据库中的数据。
包含:SELECT(查询)、FROM(子句;后跟表名)、WHERE(子句;后跟查询条件)、以及很多用于方便检索用到的函数与检索算法。
数据控制语言(DCL:Date Control Language)
用于DBA执行权限授予和权限收回操作。
包含:GRANT(授予)、REVOKE(撤销)等。
事务控制语言(TCL:Transaction Control Language)(Oracle独有的)
用于维护数据的一致性。
包含:
COMMIT:确认和提交已经进行的数据库改变
ROLLBACK:撤销已经控模型的数据库的改变
SAVEPOINT:设置保存点,取消部分数据库改变
ROLLBACK TO SAVEPOINT:ROLLBACK会结束一个事物,而这个命令不会
SET TRANSACTION:设置一个事物的属性(事物的隔离级别)
READ COMMITTED:提交读,Oracle 默认的级别
SET CONSTRAINT:在每个DML语句之后或事物提交之后,执行可延迟完整性的约束检查
(注意:在Oracle中DDL是不需要TCL来提交事务的,因为DDL操作完成就直接默认会提交事务。)
在Oracle中,一般用DDL来创建并定义表对象,用DML来操作表中的数据、用TCL来提交保存、最后用DQL来获取(查询)我们存入的数据。至于DCL的好处是用来分层管理,给各个用户之间权限的,一般我们授权或者撤销权限都要用到SYS用户的SYSDBA权限。
除了TCL,Oracle中还独有会话控制语句(SCS:Session Control Statement)与嵌入式SQL语句(ESS:Embedded SQL Statement)。
会话控制语句(SCS;Session Control Statement):
ALTER SESSION:改变当前会话设置
SET ROLE:启用和禁用角色
ALTER SYSTEM:更改系统设置(不会隐式提交当前事物)
嵌入式SQL语句(ESS:Embedded SQL Statement):
OPEN、CLOSE、CONNECT、DESCRIBE、WHENEVER、PREPARE、EXECUTE、FETCH
定义、分配、和释放游标:DECLARE CURSOR、OPEN、CLOSE
指定一个数据库,并连接到该数据库:DECLARE DATABASE、CONNECT
初始化描述符:DESCRIBE
指定如何处理错误和警告:WHENEVE
分析并运行SQL 语句:PREPARE、EXECUTE、EXECUTE IMMEDIATE
从数据库中检索数据:FETCH
Oracle数据库SQL语句的分类的更多相关文章
- Oracle数据库SQL语句操作大全汇总
数据库各个表空间增长情况的检查: SQL >SELECT A.TABLESPACE_NAME,( 1-(A.TOTAL)/B.TOTAL)* 100 USED_PERCENT FROM (SEL ...
- ORACLE数据库SQL语句的执行过程
SQL语句在数据库中处理过程是怎样的呢?执行顺序呢?在回答这个问题前,我们先来回顾一下:在ORACLE数据库系统架构下,SQL语句由用户进程产生,然后传到相对应的服务端进程,之后由服务器进程执行该SQ ...
- Oracle之SQL语句的分类
SQL简介 SQL:结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库 ...
- Oracle数据库sql语句
1.创建用户.赋权限.删除用户 create user test identified by test default test users temporary tablespace temp; gr ...
- 查询oracle 数据库 SQL语句执行情况
1.查看总消耗时间最多的前10条SQL语句 select * from (select v.sql_id, v.child_number, v.sql_text, v.elapsed_time ...
- oracle数据库 SQL语句、内置函数大全
1.数值函数 函数 返回值 样例 显示 CEIL(n) 大于或等于数值n的最小整数 SELECT CEIL(10.6) FROM TABLE_NAME; 11 FLOOR(n) 小于等于数 ...
- Oracle常用SQL语句大全
常用Oracle数据库SQL语句汇总. 1.常用操作 --清空回收站purge recyclebin;--查询回收站select * from recyclebin--查询Oracle版本信息sele ...
- Oracle数据库sql命令整理
转至:https://blog.csdn.net/weixin_43712330/article/details/88358604 以下为oracle数据库中sql语句的整理,将持续更新01. 如何登 ...
- Oracle中SQL语句分类
Oracle中SQL语句分类如下:1.DML语句 insert/delete/update/select/merge/explan plan/lock table2.DDL语句 create/atlt ...
随机推荐
- mysql 在查字符串字段中 条件参数传为数字0查到与实际数据不匹配问题
比如: CREATE TABLE `e` ( `id` int(11) DEFAULT NULL, `status` varchar(255) DEFAULT NULL, `b` varchar(25 ...
- MySQL 赋予用户权限(grant %-远程和localhost-本地区别)
不过有些时候(有些版本)'%'不包括localhost,要单独对@'localhost'进行赋值,这事真让我遇上了,在对mysql5.1.32建立远程用户时. 分别对'%'和'localhost'授权 ...
- 唤醒 App
一.Deep Link 1.什么是 Deep Link? Deep Link 是 App 的深度连接,当单击链接或编程请求调用Web URI意图时,Android系统按顺序依次尝试以下每一个操作,直到 ...
- Python中decode与encode的区别
摘抄: 字符串在Python内部的表示是Unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符解码(decode)成unicode,再从unicode编码 ...
- JSP页面与html页面在ie下显示的样式不一致的问题
今天前端将样式与html给我文件我转化为jsp之后在我的电脑上使用IE11的IE9和其他浏览器都没有问题,但是在发给其他人检查的时候却发现在win7电脑的IE9上出现样式错乱的问题,前端调试无果的情况 ...
- CentOS 系统free命令
CentOS 6 下free命令 各参数含义:total:总物理内存used:已使用内存free:完全未被使用的内存shared:应用程序共享内存buffers:缓存,主要用于目录方面,inode值等 ...
- echarts曲线图
drawLeftLine(){ let drawLine = echarts.init(document.getElementById('data-left-middle-table-wrap')); ...
- UE4中显示AI Debug信息
运行时,按下引号键('),就会出现AI的Debug信息,包含 AI Behavior Tree EQS Perception 四个大的分类,可以通过键盘上的1234键来显示和关闭相应的选项. 另外在E ...
- React Native商城项目实战16 - 购物中心详细页
逻辑分析: 首页(Home)加载的购物中心组件(ShopCenter),传递url数据: ShopCenter里根据url加载购物中心详细页组件(ShopCenterDetail), ShopCent ...
- 在裸机centos7系统中部署django项目的过程
概要 本文用一台安装了centos7.5系统的裸奔Linux机器(当然是虚拟机)详细讲解从无到有部署django项目的过程. 安装必要的工具 配置yum源 至于什么是yum源大家请自行百度,本人用的是 ...