`
Blithe
  • 浏览: 21171 次
  • 性别: Icon_minigender_1
  • 来自: 浙江嘉兴
社区版块
存档分类
最新评论

PL/SQL复习之快分类

阅读更多
PL/SQL块分类,分为以下四类,匿名块、命名块,子程序,触发器
A、
匿名块,示例如下
DECLARE
v_avgsal NUMBER(6,2)
BEGIN
SELECT avg(sal) INTO v_avgsal FROM emp
WHERE deptno = &no;
dbms_output.putline('平均工资'||v_avgsal)
END;
输出:
输入 no的值 :10
平均工资:2916.67
B、
命名块
<<outer>>
DECLARE
v_deptno NUMBER(2);
v_dname varchar2(10);
BEGIN
<<inner>>
select deptno into v_deptno from EMPLOYEES
WHERE lower(ename) = lower('&name');
END;
select dname into v_dname from EMPLOYEES
WHERE deptno = v_deptno;
dbms.output.put_line(v_dname);
END;
输出:
输入name的值:scott
部门名;RESEARCH
C.子程序。子程序包括过程。函数和包
a,过程
CREATE PROCEDURE update_sal(name_ VARCHAR2,newsal NUMBER)
IS
BEGIN
update EMPLOYEES set salary = newsal
where lower(FIRST_NAME) = lower(name_);
END;
调用过程如下
exec update_sal('scott',2000);
call update_sal('scott',2000);
b,函数,函数用于返回特定数据,在函数头部必须包含Return语句,
在函数体内必须包含RETURN 语句
CREATE FUNCTION annaual_income(name VARCHAR2)
  RETURN NUMBER IS
  annual_salary NUMBER(7,2);
BEGIN
SELECT sal*12+nal(comm,0) INTO annual_salary FROM EMPLOYEES
WHERE lower(FIRST_NAME) = lower(name);
RETURN annual_salary;
END;
调用过程如下

VAR income NUMBER
CALL annual_salary_('Alana') INTO :income;
PRINT income;
输出:
   income
   24000
c.包,用于定义公用的变量。过程。常数和函数
CREATE PACKAGE emp_pkg IS
PROCEDURE update_sal(name VARCHAR2,newsal NUMBER)L
FUNCTION annual_income(name VARCHAR2) RETURN NUMBER;
END;
上面代码只包含了过程和函数,没有实现过程和函数的实现
代码,包体用于实现包规范中的过程和函数
使用CREATE PACJAGE BOD。代码略
调用如下:
call emp_pkg.update_sal('scott',1500);

VAR income NUMBER
CALL emp_pkg.annual_income('scott') INTO :income;
PRINT income
输出:
income
18000
D.触发器
CREATE TRIGGER update_cascade
AFTER UPDATE OF DEPARTMENT_ID ON DEPARTMENTS
FOR EACH ROW
BEGIN
UPDATE EMPLOYEES SET EMPLOYEE_ID =:new.EMPLOYEE_ID
WHERE EMPLOYEE_ID =:OLD.EMPLOYEE_ID;
END;
分享到:
评论

相关推荐

    Oracle中SQL以及PL/SQL复习专用

    根据提供的文件信息,我们可以归纳出一系列关于...以上内容涵盖了Oracle数据库中SQL与PL/SQL的基础知识和常用功能,对于学习和复习都非常有用。理解并熟练掌握这些概念和技术,将有助于提高数据库管理和开发的能力。

    PL/SQL基础

    Oracle PL/SQL是一种在Oracle数据库环境中用于开发存储过程、函数、触发器和其他数据库对象的编程语言。它是SQL的扩展,提供了更高级别的控制结构和流程逻辑,使得数据库管理与应用程序开发更加灵活和强大。 PL/SQL...

    oracle复习笔记之PL/SQL程序所要了解的知识点

    在Oracle数据库环境中,PL/SQL是一种强大的编程语言,它扩展了SQL的功能,使得数据库操作更加灵活和高效。本文将深入探讨PL/SQL程序设计中的一些关键知识点,包括基本语法、记录类型、流程控制、游标使用、异常处理...

    oracle第一天练习

    Oracle数据库是世界上最广泛使用的数据库系统之一,其PL/SQL(Procedural Language/Structured Query Language)编程接口,也就是我们常说的PROC,是Oracle特有的、用于数据库操作的强大编程语言。"Oracle第一天练习...

    数据结构课后题解答(C语言描述)

    数据结构是计算机科学中的核心课程之一,它探讨了如何有效地组织和管理数据,以便于高效地执行各种操作。《数据结构用C语言描述》是一本广泛使用的教材,它结合了理论与实践,通过C语言来阐述各种数据结构的实现。这...

    plsql中文

    2. 1Z0-007 Note.doc:1Z0-007是Oracle Certified Associate, Oracle Database 12c Administrator Certified Professional的考试代码,这个文档可能是针对该考试的复习笔记或学习指南,包含PL/SQL部分的要点,如数据...

    y2复习题及答案快快抢啊,而且分还低,答案真实!!!

    - **PL/SQL**(Procedural Language for SQL)是一种过程化SQL扩展语言,用于实现复杂的数据库操作。 #### PL/SQL块组成 1. **选项A**:PL/SQL支持游标操作和事务命令,这是正确的。 2. **选项B**:声明部分在PL/...

    我们公司的内部oracle开发课件(我的珍藏)

    Oracle开发不仅涉及到SQL语言的使用,还包括PL/SQL编程、数据库设计、性能优化等多个方面。1000.jpg可能是一张包含关键概念或流程图的图片,用于辅助理解复杂的Oracle架构或操作步骤。新建 Microsoft PowerPoint ...

    Oracle选择题复习(带答案).doc

    Oracle 选择题复习(带答案) 本资源摘要信息涵盖了 Oracle 数据库的多个方面,包括数据库启动和关闭、参数文件、控制文件、表空间、PL/SQL 编程、异常处理、数据库性能等。 参数文件 * 在参数文件中,以 # 符号...

    ssd5-exam1选择题题库

    在准备考试或复习相关知识点时,理解并掌握每一项基本概念都是至关重要的,这有助于提升解决问题的能力和编写高质量代码的能力。 综上所述,“ssd5-exam1选择题题库”覆盖了C++编程语言中的多个核心知识点,包括...

    orcl复习资料.docx

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的PL/SQL编程环境来处理复杂的数据库操作。在上述的复习资料中,主要涉及了两个重要的PL/SQL编程概念:循环和异常处理。 1. 循环: - 简单Loop循环...

    ORACLE复习资料

    本复习资料主要涵盖了Oracle中的数据操作语言(DML)和过程化SQL(PL/SQL)的相关实例,这对于理解和掌握Oracle数据库的操作至关重要。 1. 数据操作语言(DML): DML是Oracle中用于插入、更新、删除和查询数据的...

    oracle复习资料

    oracle PL/sql语言复习资料,很全的oracle函数,sql语句,以及游标,存储过程,触发器等复习资料.

    第三章-plsql-SQL语言复习PPT课件.ppt

    PL/SQL SQL语言复习笔记 PL/SQL 是一种 procedural language,用于处理和操作数据库中的数据。它是 Structured Query Language(SQL)的扩展,提供了更多的编程功能和控制能力。 SQL 语言的发展 SQL 语言的发展...

    2008 SQL Server 基础复习大纲

    - **特性**:使用PL/SQL作为其过程化SQL语言,适用于大型企业级应用。 - **平台**:可以在多种操作系统上运行,包括Unix、Linux等。 3. **MySQL** - **特性**:轻量级且易于安装配置,适合小型到中型的应用。 -...

    Oracle期末考试复习题.pdf

    本题涉及到的知识点涵盖了Oracle数据库的基础概念、SQL语法、数据类型、数据库对象以及PL/SQL编程。 1. **Oracle数据库应用**:Oracle数据库的应用主要分为开发和管理两大部分。开发主要涉及编写SQL和PL/SQL代码来...

Global site tag (gtag.js) - Google Analytics