oracle函数或者叫存储过程,在实际的开发过程中对于复杂的业务需求是非常有用的,非常有效率的也是非常好玩儿的一个技术点。

平常在开发过程中对于CRUD功能较多。一般SQL即可应付,大不了就是长一点而已。但是遇到复杂业务需求,在Java代码中开发略显混乱时,函数将可以作为一个非常优秀的实现方式,在数据库中对业务进行处理。

下面介绍一下oracle函数的集中语法,小弟学艺不精,如有遗漏,请不吝指正:

oracle语法在编写过程中其实比较简单,首先它是一个脚本语言,也叫作解释性语言,脚本语言如python,js等的共有特点就是从上到下一行一行的执行。也就是说我们只要符合函数的语法,我们可以随意在函数里面写DML语句(CRUD)、DCL(GRANT)、DDL语句等,所有初次编写函数的时候可能无从下手,但其实语法非常随意。

1、那其实,首先我们需使用create or replace语句来创造函数,为什么要加一个replace(替代)单词,其实意思就是,由函数重名的情况就替换掉,这是因为在函数发包的时候可能要替换掉原来的函数。例子:

create or replace fn_xxx_aaa(arg1.arg2....)

end fn_xxx_aaa;

2、变量的定义

所谓函数,肯定要有参数,有返回值。但是oracle函数多了一个叫做输出值,也是程序调用之后可以接受到的一些查询结果或是游标。输入输出值定义在括号内。

3、游标及循环

其实游标就是一个缓存,例如,我们在函数里面进行判定的时候,我们可能需要遍历一个表的数据,那我们不能去把表里面的数据都查一遍,这样太浪费资源了,而且数据库是一种非常稀有的资源,所以我们就要把所有的数据都查出来,存在游标里面,去循环它,这样也可以得到游标里面的所有数据。

declare cursor XX_XX_XX is

  select * from aaa;

begin

open cursor;

loop

fetch XX_XX_XX into xx x xx xx x;

exit when XX_XX_XX%NOTFOUND;

  begin

xxxxxxxxxxxxxxxxxxx

  end;

end loop;

end;

上面的就是最简单的游标配合循环做业务的一些处理。先将游标数据抓取赋值给定义的某种变量,然后拿着变量一点一点做循环判断,对数据进行处理。

4、除了游标之外呢,还有一种东西也是常用到的一种东西,视图。

视图其实什么也不是,为什么说他什么也不是呢,因为视图就根本不存在,我们定义完了视图之后呢,其实就是在你的 sql之后添加了一些sql,比如说我们create了一个视图,其实还是将两个或者多个集合的数据搞到一个集合里面了,也就是你这个sql后面有添加了一段sql。

5、还有一个东西,表分区。

虽然做完之后效果不明显吧,但是毕竟对Linuxoracle服务器熟悉了,数据泵文件导入导出也很熟悉了。好吧,下一篇文章写数据泵文件的导入导出以及表分区。

第一次写这么长的博客,小弟年龄肯定比各位看官想的小得多,所以请随意指教,谢谢各位看官,希望对您对我都有所帮助。

oracle函数,游标,视图使用总结0.000000000000000000001的更多相关文章

  1. oracle函数,游标,视图使用总结

    oracle函数或者叫存储过程,在实际的开发过程中对于复杂的业务需求是非常有用的,非常有效率的也是非常好玩儿的一个技术点. 平常在开发过程中对于CRUD功能较多.一般SQL即可应付,大不了就是长一点而 ...

  2. Oracle函数面试题

    1.对字符串操作的函数? 答:ASCII() –函数返回字符表达式最左端字符的ASCII 码值 CHR() –函数用于将ASCII 码转换为字符 –如果没有输入0 ~ 255 之间的ASCII 码值C ...

  3. Oracle 函数高级查询

    目录 oracle高级查询 Oracle SQL获取每个分组中日期最新的一条数据 求平均值(为0的参数不均摊) 字符串清除前面的0 判断字符串串是否包含某个字符串 switch 判断 oracle不足 ...

  4. MySql学习(四) —— 函数、视图

    注:该MySql系列博客仅为个人学习笔记. 本篇博客主要涉及MySql 函数(数学函数.字符串函数.日期时间函数.流程控制函数等),视图. 一.函数 1. 数学函数 对于数学函数,若发生错误,所有数学 ...

  5. 【函数】Oracle函数系列(2)--数学函数及日期函数

    [函数]Oracle函数系列(2)--数学函数及日期函数 1  BLOG文档结构图 2  前言部分 2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不 ...

  6. Oracle数据库之视图与索引

    Oracle数据库之视图与索引 1. 视图简介 视图是基于一个表或多个表或视图的逻辑表,本身不包含数据,通过它可以对表里面的数据进行查询和修改. 视图基于的表称为基表,视图是存储在数据字典里的一条SE ...

  7. 查看SQL SERVER 加密存储过程,函数,触发器,视图

    原文:查看SQL SERVER 加密存储过程,函数,触发器,视图 create  PROCEDURE sp_decrypt(@objectname varchar(50))ASbeginset noc ...

  8. Oracle函数sys_connect_by_path 详解

    Oracle函数sys_connect_by_path 详解 语法:Oracle函数:sys_connect_by_path 主要用于树查询(层次查询) 以及 多列转行.其语法一般为:       s ...

  9. Oracle使用游标为所有用户表添加主键语句

    应用场合:数据表新增自增一主键能加快数据表的访问速度,而且是整形的索引速度最快.本程序适合在导入Oracle数据库时删除不存在主键的情况下运行. 代码说明:所有的表主键字段名都设置为ID,如果已存在I ...

随机推荐

  1. PhpStorm 10 破解方法

    最新版PhpStorm 10正式版改进了PHP 7支持,改进代码完成功能. PhpStorm 是最好的PHP开发工具,使用它进行PHP开发将会让你感觉到编程的乐趣. 快乐无极终于从oschina看到了 ...

  2. HTTP,FTP,TCP,UDP及SOCKET

    一.TCP/IP协议简析TCP/IP是个协议组,可分为三个层次:网络层.传输层和应用层:网络层:IP协议.ICMP协议.ARP协议.RARP协议和BOOTP协议传输层:TCP协议与UDP协议应用层:F ...

  3. 基于apache的tomcat负载均衡和集群配置

    最近不是很忙,用零碎时间做点小小的实验. 以前公司采用F5负载均衡交换机,F5将请求转发给多台服务器,每台服务器有多个webserver实例,每个webserver分布在多台服务器,交叉式的分布集群. ...

  4. HTML第二本书学习后记

    1,换行标记<br>,不换行标记<nobr></nobr> 2,添加水平线 <hr> 3,插入特殊符号:   空格 &nbsp    " ...

  5. selenium RC+JAVA 笔记 一

    selenium 常用操作有:open,type,click,select,selectFrame. package com.example.tests; import com.thoughtwork ...

  6. Linux基本操作命令

    Linux基本操作命令 首先介绍一个名词“控制台(console)”,它就是我们通常见到的使用字符操作界面的人机接口,例如dos.我们说控制台命令,就是指通过字符界面输入的可以操作系统的命令,例如do ...

  7. sed处理url编码解码=== web日志的url处理

    URL 编码/解码方法(linux  shell实现),方法如下: 1.编码的两种方法: admin@~ 11:14:29>echo '手机' | tr -d '\n' | xxd -plain ...

  8. eclipse下导入jdk源码

    一直想好好看看jdk的源码,虽然可以直接解压jdk下的src看,但是终究不方便!后来发现可以导入到eclipse中,就在网上找了一些方法,下面就和大家分共享: step1:打开eclipse选择Win ...

  9. 可爱的Python_课后习题_CDay−2 完成核心功能

    1. 在前文的grep 实现例子中,没有考虑子目录的处理方式,因为如果直接open 目录进行读grep 是古老实用且高效的模式文本匹配工具,在所有的Unix/Linux 系统中都会默认安装,它最常做的 ...

  10. jqurey datatable tableTools 自定义button元素 以及按钮自事件

    版本 1.10.4 "dom": 'T<"clear">lfrtip', "tableTools": { //"sSw ...