基础语法

[declare

  --定义部分]

begin

--执行部分

[exception

  --异常处理部分]

end;

其中,定义部分以declare开始,该部分是可选的;执行部分以begin开始,该部分是必须的

异常部分以exception开始,该部分是可选的.而end则是pl/sql块的结束标记.

注意我使用的Oracle安装时自带的 SQL Plus请注意第一行命令.否则控制台不输出内容.

当结束时,请输入 / 然后回车.

常用变量类型

char() varchar2() number() date;

运算符与表达式

if分支语句

if 条件 then

  执行语句;

elsif 条件 then

  执行语句;

else

  执行语句;

end if;

(这个写法去掉 then 和java中的 if else if  else 一样.看起来好恶心的语法 )记得最后end if; 结尾

切记 除了 else 分支其他分支都要带 then

case语句

case 条件

when 值 then 执行语句

when 值 then 执行语句

....

else 执行语句

end;

case 是可以有返回值的.

将 case 的执行结果赋值给 b; 但是,如果我们让case 有返回值,在case语句结束后就不能是 end case;而只能是end;

循环语句

基本循环

loop

执行体

exit when 条件;

end loop;

注意!这种写法,执行体肯定会执行一次.而 exit 中的条件满足是 停止循环.

程序自上而下执行.

while循环

while 条件 loop

循环体

end loop;

for循环

for  被循环结果赋值 in [reverse]  开始..结束 loop

循环体

end loop;

可以看出for循环的 执行顺序是 判断开始和结束条件.满足赋值给 i.执行循环体,然后再次判断.

for循环中的 i 可以不被声明. 开始条件和结束条件也可以是变量,但是只能是number类型

但是如果被赋值的变量不存在.则无法在循环调用结束后使用该变量.

reverse 的作用则是 ++ 变成 --

goto语句一个破坏力极强的语句

goto 将跳转到 定义好的 标记处.设置标记的 符号为 <<标记>>

null

null特殊的很.首先两个null不相等 null本身不等于null ,判断是否为null 只能使用 is null

复合变量

标准变量只可以保存单个数值,与之对应的就是复合变量.复合变量可以将不同数据类型的多个值

存储在同一个单元中.

%type变量

此变量为不确定类型的变量.变量的具体类型由赋值给他的表字段类型一致.

使用 select into 语句可以将查询出来的值赋值给变量;但是注意使用%type赋值

必须保证赋值的结果是单行单列.

%rowtype变量

%rowtype声明表示一行记录的变量(一个对象),你将一个表中的数据结构赋值给变量x

Oracle之PL/SQL的更多相关文章

  1. Oracle中PL/SQL的执行部分和各种流程控制

    Oracle中PL/SQL的执行部分和异常部分 一.PL/SQL的执行部分. 赋值语句. 赋值语句分两种,一种是定义一个变量,然后接收用户的IO赋值:另一种是通过SQL查询结果赋值. 用户赋值举例: ...

  2. Oracle中PL/SQL简介、基本语法以及数据类型

    Oracle中PL/SQL简介.基本语法以及数据类型 一.PL/SQL简介. Oracle PL/SQL语言(Procedural Language/SQL)是结合了结构化查询和Oracle自身过程控 ...

  3. 使用oracle 的 PL/Sql 定时执行一个存储过程

    CSDN日报20170322--<关于软件研发的一些体会总结> 同步博客至 CSDN ,让更多开发者看到你的文章 看微博技术大咖解析互联网应用架构实战 使用oracle 的 PL/Sql ...

  4. Oracle之PL/SQL学习笔记

    自己在学习Oracle是做的笔记及实验代码记录,内容挺全的,也挺详细,发篇博文分享给需要的朋友,共有1w多字的学习笔记吧.是以前做的,一直在压箱底,今天拿出来整理了一下,给大家分享,有不足之处还望大家 ...

  5. 【SQL】Oracle的PL/SQL语法及其拓展数据类型总结

    PL/SQL语法 PL/SQL程序由三部分组成,声明部分.执行部分.异常处理部分. 模板: DECLARE /*变量声明*/ BEGIN /*程序主体*/ EXCEPTION /*异常处理部分*/ E ...

  6. Oracle实践--PL/SQL表分区的基础

    PL/SQL基础入门之表分区 PL/SQL:过程语言(Procedure  Language)和结构化语言(Structured Query Language)结合而成的编程语言.是对SQL的扩展.支 ...

  7. C#(在WeBAPI)获取Oracle(在PL/SQL)游标类型的存储过程(用到了RefCursor)

    需求:WebAPI服务端,通过Oracle数据库的存储过程,获取数据. 在PL/SQL 建立存储过程:(先来最简单的,就是把整个表都查出来) create or replace procedure S ...

  8. 【Oracle】PL/SQL 显式游标、隐式游标、动态游标

    在PL/SQL块中执行SELECT.INSERT.DELETE和UPDATE语句时,Oracle会在内存中为其分配上下文区(Context Area),即缓冲区.游标是指向该区的一个指针,或是命名一个 ...

  9. Oracle数据库PL/SQL那点事情---修改过电脑的用户名

    在安装Oracle数据库的PL/SQL工具时候,电脑名称是重装系统后自动生成的用户名名称,作为程序员,有很强的强迫症,就想利用自己的英文名称作为自己电脑的名称,所以就修改了电脑的名称:结果PL/SQL ...

  10. ORACLE FORMS PL/SQL PACKAGE SHOW TIPS WINDOW

    --在开发ORACLE FORM的程序中,要编写PL/SQL程序包产出异常情况时,直接在FORM弹出一个异常提示窗口 DECLARE BEGIN app_exception.raise_excepti ...

随机推荐

  1. C#学习之委托与事件

    委托 语法:  public  delegate void MyDelegate(); 使用:  1.定义委托----public  delegate void MyDelegate(); 2.注册委 ...

  2. Android App自动化测试实战(基于Python)(三)

    1.Native App自动化测试及Appuim框架介绍 android平台提供了一个基于java语言的测试框架uiautomator,它一个测试的Java库,包含了创建UI测试的各种API和执行自动 ...

  3. 解决 bash: vue command not found

    背景  : win10 使用  yarn  全局 安装  vue/cli 后   yarn  global add  @vue/cli 提示安装成功 使用vue create   提示  bash: ...

  4. python部分笔记

    创建类和对象 图片转在自:https://www.cnblogs.com/aylin/p/5547558.html 图片转在自:https://www.cnblogs.com/aylin/p/5547 ...

  5. linux下sendmail

    1. 安装 # yum install sendmail.x86_64 bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动sendmail服务,配置非常麻烦,而且 ...

  6. strace命令 系统调用

    简介 strace常用来跟踪进程执行时的系统调用和所接收的信号. 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核 ...

  7. 配置全文搜索引擎solr

    前言 solr是apache下的一个子项目,用java编写基于Lucene开发的全文搜索服务器,不同于Lucene,solr一个完成的搜索服务器,提供了众多接口调用,而Lucene只是个工具包.如果用 ...

  8. anaconda配置清华大学开源软件镜像

    配置镜像在anaconda安装好之后,默认的镜像是官方的,由于官网的镜像在境外,使用国内的镜像能够加快访问的速度.这里选择了清华的的镜像.镜像的地址如下:tuna.Anaconda 安装包可以到 ht ...

  9. Django 中使用 js 操作 cookies

    session与cookie对比 Cookie: 保存在用户浏览器端的键值对 本地可以修改:如果有敏感信息,可以被看到 Session: 保存在服务器端的键值对 服务端:保存键值对{'随机字符串':{ ...

  10. [Tutorial]综述阅读笔记 <Visual Odometry PartII_Introduce about BA>

    目录 Visual Odometry: Part II - Matching, Robustness, and Applications ---- paper notes 特征点的选择与匹配 特征点匹 ...