Oracle 笔记(七)、PL/SQL 基础

简介:

一、概述、PL/SQL 块结构
PL/SQL 是Oracle产品对 SQL 语言的扩展。PL/SQL 块共分为三个部分:声明部分、可执行部分、异常部分。

DECLARE
    ...
BEGIN
    ...
EXCEPTION
    ...
END;

变量声明内容:赋予变量适当的名称、数据类型、定义变量(标准,记录)、控制变量范围。
变量命名规则:变量以字符开头;可包含数字、下划线、$、#;长度范围 1~30;不区分大小写;不能使用系统关键字。

ps.在 PL/SQL 常用的命令:
1、打开输出开关            SET SERVEROUTPUT ON ;
2、利用系统包输出信息     DBMS_OUTPUT.PUT_LINE('x 的值是:' || x);


二、控制结构

1、分支语句
a、IF 分支

IF ... THEN 
    ...
ELSEIF ...THEN
    ...
ELSE
    ...
END IF;


b、CASE 分支

CASE 
    WHEN ... THEN
        ...
    ELSE
        ...
END CASE;


2、循环语句
a、基本循环(LOOP)

无条件循环,为避免进入无限循环,LOOP 循环的语句必须使用 EXIT 或 EXIT WHEN 语句。

LOOP
    ...
END LOOP;


b、WHILE 循环

WHILE condition LOOP
    ...
END LOOP;


c、FOR 循环

FOR counter IN [REVERSE] start..end 
LOOP
    ...
END LOOP;


3、顺序控制
GOTO 语句:无条件的将控制权转到标签指定的语句。
NULL 语句:什么也不做,只是将控制权转到下一条语句,用于语句结构需要,但什么也不需要操作的情况下。

GOTO xxxx;
      ...
<<xxxx>>
NULL;



三、异常
系统异常(预定义异常)

EXCEPTION 
    WHEN xxxx THEN
        ....


自定义异常

DECLARE
    -- 自定义异常
    xxxxx EXCEPTION;
BEGIN
    -- 显式引发异常
    RAISE xxxxx
EXCEPTION
    -- 异常处理
    WHEN xxxxx THEN
        ....
END;  



四、复合变量(记录)
记录是由几个相关值构成的复合变量,常用于支持 SELECT 语句的返回值。使用记录可以将一行数据并到一个单元进行处理,而不必将每一列单独处理。

DECLARE
    TYPE myrecord IS RECORD(id varchar2(10), name varchar2(10));
    real_record myrecord;
BEGIN
    -- SELECT .. INTO 赋值语句
    SELECT emp_id, emp_name INTO real_record FROM emp WHERE emp_id='001';
    .....
END;


或者 可以利用属性类型来引用变量或者数据库中某列的数据类型。

  ● 声明变量 icode,引用表中某列 emp.id 的数据类型
    icode emp.id%TYPE;

  ● 声明变量 emp_rec 引用表 emp 中所有列记录类型
    emp_rec emp%ROWTYPE;


本文转自 qvodnet 51CTO博客,原文链接:http://blog.51cto.com/bks2015/1982990

相关文章
|
6天前
|
SQL Oracle 关系型数据库
【YashanDB知识库】yashandb执行包含带oracle dblink表的sql时性能差
【YashanDB知识库】yashandb执行包含带oracle dblink表的sql时性能差
|
7天前
|
SQL 缓存 Java
框架源码私享笔记(02)Mybatis核心框架原理 | 一条SQL透析核心组件功能特性
本文详细解构了MyBatis的工作机制,包括解析配置、创建连接、执行SQL、结果封装和关闭连接等步骤。文章还介绍了MyBatis的五大核心功能特性:支持动态SQL、缓存机制(一级和二级缓存)、插件扩展、延迟加载和SQL注解,帮助读者深入了解其高效灵活的设计理念。
|
2月前
|
SQL Oracle 关系型数据库
如何在 Oracle 中配置和使用 SQL Profiles 来优化查询性能?
在 Oracle 数据库中,SQL Profiles 是优化查询性能的工具,通过提供额外统计信息帮助生成更有效的执行计划。配置和使用步骤包括:1. 启用自动 SQL 调优;2. 手动创建 SQL Profile,涉及收集、执行调优任务、查看报告及应用建议;3. 验证效果;4. 使用 `DBA_SQL_PROFILES` 视图管理 Profile。
|
3月前
|
SQL 存储 关系型数据库
SQL自学笔记(3):SQL里的DCL,DQL都代表什么?
本文介绍了SQL的基础语言类型(DDL、DML、DCL、DQL),并详细说明了如何创建用户和表格,最后推荐了几款适合初学者的免费SQL实践平台。
363 3
SQL自学笔记(3):SQL里的DCL,DQL都代表什么?
|
3月前
|
SQL 数据挖掘 数据库
SQL自学笔记(2):如何用SQL做简单的检索
本文深入介绍了SQL的基本语法,包括数据查询、过滤、排序、分组及表连接等操作,并通过实际案例展示了SQL在用户研究中的应用,如用户行为分析、用户细分、用户留存分析及满意度调查数据分析。
63 0
SQL自学笔记(2):如何用SQL做简单的检索
|
3月前
|
SQL 数据挖掘 关系型数据库
SQL自学笔记(1):什么是SQL?有什么用?
本文为用户研究新手介绍SQL(结构化查询语言),解释了SQL的基本概念、入门方法及在用户研究中的应用通过实际案例说明,如用户行为分析、用户细分和满意度调查数据分析,展示了SQL在用户研究中的重要作用。
842 0
SQL自学笔记(1):什么是SQL?有什么用?
|
4月前
|
SQL 数据采集 监控
局域网监控电脑屏幕软件:PL/SQL 实现的数据库关联监控
在当今网络环境中,基于PL/SQL的局域网监控系统对于企业和机构的信息安全至关重要。该系统包括屏幕数据采集、数据处理与分析、数据库关联与存储三个核心模块,能够提供全面而准确的监控信息,帮助管理者有效监督局域网内的电脑使用情况。
71 2
|
5月前
|
SQL 监控 Oracle
Oracle SQL性能优化全面指南
在数据库管理领域,Oracle SQL性能优化是确保数据库高效运行和数据查询速度的关键
|
5月前
|
SQL 存储 Oracle
Oracle数据库SQL语句详解与应用指南
在数字化时代,数据库已成为各类企业和组织不可或缺的核心组件。Oracle数据库作为业界领先的数据库管理系统之一,广泛应用于各种业务场景。掌握Oracle数据库的SQL语句是数据库管理员、开发人员及运维人员的基本技能。本文将详细介绍Oracle数据库SQL语句的基本概念、语法、应用及最佳实践。一、Or
154 3
|
SQL Oracle 关系型数据库

推荐镜像

更多