DML语言

            &:地址符;(PrepareStament)
            批处理:插入--------一次将10号部门的员工插入新的表中;
                            其不必书写values语句。子查询中的值列表应与insert中子句中的列名相应;
                          delete与truncate的差别:1;delete逐条删除,而truncate先摧毁表。然后在新建表。
                                                                    2:主要差别是两种不同的语言;
                                                                    3;delete不会释放空间,而truncate能够;
                                                                    4:delete删除时会产生碎片。而truncate不会产生;
                                                                    5:delete能够闪回,而truncate不能够闪回;
                          set feedback off 命令:不显示运行语言;
            运行硬盘上的sql脚本命令:如:@c:\sql.sql; 測试得出:delete操作速度快。
            

DCL语言
            Oracle的事物是自己主动开启,手动提交(显示:commit;隐式:正常退出。ddl语句) 回滚(显示:rollback;隐式:非正常退出,断电。宕机)。
            通过保存点savepoint可以更好控制事物;创建保存点的命令:savepoint 保存点名。
            Oracle支持的事物级别:READ COMMITED(default)。SERIALIZABLE,READ ONLY;
            

DDL语言
            对象有12个
            表:创建表时须要权限。空间;我们能够通过子查询高速建表。能够通过add,modfiy,drop。rename实现对表字段的改动。
                    Oracle的回收站:show recyclebin 查看回收站。purge recyclebin 清空回收站;并非每一个用户都有回收站,管理员没有回收站。普通用户才会有回收站。
                    怎样将回收站的表取回?---闪回课程
                    表的约束:not null,unique。primary key,foreign key,check;一般创建表和创建约束分开。便于阅读。
                    约束的样例:
create table student
(
pid number constraint student_PK primary key,
sname varchar2(20) constraint student_name_notnull not null,
gender varchar2(2) constraint student_gender check (gender in('男','女')),
email varchar2(20) constraint student_email_unique unique
constraint student_email_notnull not null,
deptno number constraint student_FK references dept(deptno) on delete cascade
)
            视图:从表中抽出的逻辑上相关的数据集合;目的:简化查寻;
                      不建议:通过视图对表的改动;


            序列:sequences主要作用是给表的主键提供值。其有两个属性nextval,currval;
                        其特点:其是个数组。存在于内存其中;
                        数据不连续:回滚,系统异常--停电,多张表使用一个序列。

            索引:提高查询速度。
                       如:create index myindex on emp(deptno,job);
                        
            同义词:别名

Oracle的plsql

            操作Oracle最快的语言是plsql;
            变量的类型:基础类型,引用性变量(%type)。记录性变量(%rowtype);
            其赋值方式有两种:“:=”和intokeyword。
            set serveroutput on 命令:打开控制台打印输出。 accept num prompt '请输入'命令是:接受键盘上输入的内容。
            plsql的if语句必须以 if end结束;

            光标:cursor用于储存一个查询返回的多行数据;其属性:%isopen是否打开;%rowcount记录数;%notfound 没有记录。
                        使用cursor首先open和最后close;Oracle最多支持300个光标;show paremeters 查看參数设置;
                        案例:使用光标查询员工的姓名和薪水,并打印;给员工涨工资,总裁1000,经理800。其他400;其也须要手动提交事物;
                        带參数的光标:其定义。打开光标时带參数,其他使用方法和不带光标的使用方法同样。
                        案例:查询某个部门的员工姓名

            例外:系统自带的例外,自己定义的例外;在Java中异常是向上处理机制。而plsql不能向上抛,
                        在java中try。。catch。

。finally 而plsql中仅仅有try。。

catch其写法是exception when 。

then。。。

                        在declare中自己定义例外:例外名 exception; 使用raise跑出异常,异常会帮你自己主动关闭光标;


            实例一:统计每年入职的人数;
            实例二:为员工涨工资。从最低工资调起没人涨10%。但工资总额不能超过5万元;请计算涨工资的人数和涨工资后的工资总额。并输出涨工资人数和工资总额;

=====================================================
存储过程(没有返回值),存储函数(有返回值),触发器
            Java不能直接调用plsql,而是写成存储过程。存储函数,让后用Java来调用;
            创建存储过称:create[ or replace] procedure 过程名(參数列表) as  plsql子程序体;參数类型及输入输出要标明;不要在存储函数,存储过程中不要提交事物;
           调用存储过程的方法:exec 过程名();在还有一个plsql中调用:begin 过程名();end。这两种方法;
            创建存储函数:create[ or replace] procedure 过程名(參数列表) return 返回值类型 as  plsql子程序体; 
            输出參数适用out。存储过程,存储函数都能够返回一个或者多个參数。其二者基本上没有差别;
            实例一:查询某个部门中,全部员工的全部信息
                        须要包头和包体:
            当返回的结果是集合,能够使用光标来实现;
            

                        


            



Oracle数据处理的更多相关文章

  1. oracle数据处理之逻辑备份与恢复

    逻辑备份与恢复 17.1 传统的导入导出exp/imp:传统的导出导入程序指的是exp/imp,用于实施数据库的逻辑备份和恢复. 导出程序exp将数据库中的对象定义和数据备份到一个操作系统二进制文件中 ...

  2. oracle数据处理之sql loader(三)

    数据装载 sql loader(PPT-I-490-498) 14.1 sql*loader:将外部数据(比如文本型)数据导入oracle database.(用于数据导入.不同类型数据库数据迁移) ...

  3. oracle数据处理之sql*loader(一)

    SQL*Loader是oracle提供的可以从多种平面文件中向数据库中加载数据的工具,它比较适合业务分析类型数据库(数据仓库);使用sqlldr工具可以在很短的时间内向数据库中加载大量的数据,像把制作 ...

  4. oracle数据处理之expdb/impdb

    Oracle 数据泵的使用方法 一.新建逻辑目录 最好以system等管理员创建逻辑目录,Oracle不会自动创建实际的物理目录“D:\oracleData”(务必手动创建此目录),仅仅是进行定义逻辑 ...

  5. oracle数据处理之exp/imp

    oracle 导出/导入数据方法一 exp/imp工具:1 将数据库oracle01完全导出,DBA:sys,密码:123456:用户名Scott 密码123456 导出到D:\emp.dmp中 ex ...

  6. oracle数据处理之sql*loader(二)

    目录 SQL*Loader对不同文件及格式的处理方法 2.1 Excel文件 一般的Excel文件最大行数不超过65536行,说明数据处理量并不大,处理Excel的方式是将其另存为CSV格式文件,然后 ...

  7. Oracle 数据处理

    1. 对维度按照度量值的排名进行统计得分,第一名100分,第二名99分,第三名98……可以先进行排名,然后用 得分值+1,减去排名既是所得分数. -- 建表 create table province ...

  8. Oracle Day05 集合与数据处理

    1.集合 --集合操作: 并集.交集.差. select deptno,job,sum(sal) from emp group by deptno,job union select deptno,to ...

  9. Oracle入门第四天(上)——表管理与数据处理

    一.常见数据库对象 1.基本对象 对应的对象英文名参考:https://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm#sthref6 ...

随机推荐

  1. [ASP.Net] 转 > ASP.NET MVC 小牛之路

    URL: http://www.cnblogs.com/willick/ 看到了不错的学习笔记,MVC.Net学习之路展开   [ASP.NET MVC 小牛之路]18 - Web API [ASP. ...

  2. thrift RPC 框架的自我搭建

    安装thrift rpc   安装的系统是Centos 7 未成功的方法 :(原因没找到,但是还是要记录下) 安装依赖库 yum install automake libtool flex bison ...

  3. 了解php数据转json格式与前端交互基础

    php数据转json格式与前端交互 ArryJson1.php <?php $test=array(); $word=array("我12","要43", ...

  4. TYVJ 1941 BZOJ3038 上帝造题的七分钟2 并查集+树状数组

    背景 XLk觉得<上帝造题的七分钟>不太过瘾,于是有了第二部. 描述 "第一分钟,X说,要有数列,于是便给定了一个正整数数列. 第二分钟,L说,要能修改,于是便有了对一段数中每个 ...

  5. Windows系统开发常用类-------------Environment类

    Windows系统开发常用类-------------Environment类:         SystemDirectory//显示系统目录         MachineName//计算机名称 ...

  6. 第7章 性能和可靠性模式 Failover Cluster(故障转移群集)

    上下文 您已经决定在设计或修改基础结构层时使用群集以提供高度可用的服务. 问题 您应该如何设计一个高度可用的基础结构层,来防止因单台服务器或它所运行的软件出现故障而导致的服务丢失? 影响因素 在设计高 ...

  7. 什么是 HTML5?

    HTML5 是下一代的 HTML. 什么是 HTML5? HTML5 将成为 HTML.XHTML 以及 HTML DOM 的新标准. HTML 的上一个版本诞生于 1999 年.自从那以后,Web ...

  8. Oracle表的种类及定义

    1表的类型 1)堆组织表(heap organized tables). 当增加数据时,将使用在段中找到的第一个适合数据大小的空闲空间.当数据从表中删除时,留下的空间允许随后的insert和updat ...

  9. (转载)Android 方法数超过64k、编译OOM、编译过慢解决方案。

    Android 方法数超过64k.编译OOM.编译过慢解决方案.   目前将项目中的leancloud的即时通讯改为环信的即时通讯.当引入easeui的时候 出现方法数超过上限的问题. 搜索一下问题, ...

  10. 从Spark1.6到Spark2.1,Logging该何去何从

    大家都知道spark 1.6.0版本比较稳定,也比较流行. 我们项目组也是,最初用的就是这个版本. 这段时间,项目组引入spark 2.1.0版本,我想尝尝鲜. Pom中刚刚换了dependency马 ...