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. Elasticsearch日志收集

    Install pip if necessary curl "https://bootstrap.pypa.io/get-pip.py" -o "get-pip.py&q ...

  2. JVM概论

    引子 Java虚拟机是Java应用程序的执行环境.通常而言,JVM是由一组严格的指令集和一个复杂的内存模型来具体实现的虚拟机,它用来解释编译好的java字节码文件,将字节码转换为特定机器可以执行的本机 ...

  3. 如何拿到阿里算法校招offer

    好多同学有问过怎么能拿到阿里算法类校招的offer,刚好看到这篇文章分享给大家,详情可以看原文链接,原文链接中有视频讲解. 师兄师姐的建议: 之前初学算法的时候上过的公开课和看过的书 1. Cours ...

  4. 搭建eclipse的安卓开发环境(eclipse+jdk+adt+sdk)

    学校暑期大作业让用安卓写一个app,有两种方案(android stduio+sdk和eclipse+jdk+adt+sdk)折腾了几天发现还是后者好用,但是安装环境和下载真的是去了半条命,(不过由于 ...

  5. 数组、ArrayList、HashTable

    相同点:都可以存储一组数据 不同点: 1)数组,必须要先分配空间,存储数据固定 2)ArrayList,存储数据可以自由扩展 3)HashTable与ArrayList一样,但是它是有意义的,键值对形 ...

  6. 三维重建:Kinect几何映射-SDK景深数据处理

    此文大量使用XML,非C类的代码,看看图即可. 原文链接:Kinect for Windows SDK开发入门(五):景深数据处理 3. 对物体进行测量 像上篇文章中对深度值测量原理进行讨论的那样,像 ...

  7. 还是UVa340

    #include<stdio.h> #define maxn 1010 int main() { int num,a[maxn],i,j,b[maxn]; ; &&num) ...

  8. js预览上传图片

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  9. 【seo】title / robots / description / canonical

    1.title title,就是浏览器上显示的那些内容,不仅用户能看到,也能被搜索引擎检索到(搜索引擎在抓取网页时,最先读取的就是网页标题,所以title是否正确设置极其重要. 1)title一般不超 ...

  10. JTextArea+JScrollPane滚动条自动在最下边(转帖)

    这是我制作五子棋的过程中遇到的问题,在网上搜了好几种答案,分别列在下面了.不过感觉第一种相当方便.用得简洁,爽! 1. 利用JTextArea的selectAll();方法在添加信息之后强制将光标移动 ...