摘要: PIPELINED管道函数 从oracle 9i 开始,提供了一个叫做“管道化表函数”的概念,来解决这个问题。 这种类型的函数,必须返回一个集合类型,且标明 pipelined; 这个oracle函数不能返回具体变量,必须以一个空 return 返回; 这个oracle函数中,通过 pipe row 阅读全文
posted @ 2020-02-03 15:12 marxist 阅读(1300) 评论(0) 推荐(0)
摘要: 触发器 trigger 触发器是一种特殊的过程,它的执行是由一系列事件触发的。这些事件有用户登录注销事件,DML语句执行事件等等。我们常用的就是DML触发器,事件的精确粒度可以是表级或行级。 trigger的实际应用非常广泛,例如A表有数据DML操作,就可以在A表上做个触发器,将数据协同更新到B表。 阅读全文
posted @ 2020-02-03 08:45 marxist 阅读(468) 评论(0) 推荐(0)
摘要: 包头 声明包体的内容,里面声明的变量或类型,作用范围是全局的。定义了过程或函数的时候,这个函数也可以被外界使用,如果包头中没定义包体中的函数或过程,这时函数和过程就是这个包私有的。创建时不需要写begin,即使有begin内容也只在编译是执行一次。 格式如下: create or replace p 阅读全文
posted @ 2020-02-03 00:07 marxist 阅读(184) 评论(0) 推荐(1)
摘要: 函数特性:一定要返回值并且只能返回一个值。 练习1: CREATE OR REPLACE FUNCTION get_sal (p_id IN emp.empno%TYPE) RETURN NUMBER --形式参数 IS | AS v_salary emp.sal%TYPE :=0; BEGIN S 阅读全文
posted @ 2020-02-02 12:45 marxist 阅读(237) 评论(0) 推荐(0)
摘要: 练习 1:导入型形式参数(in类型) CREATE OR REPLACE PROCEDURE raise_salary (p_id IN emp.empno%TYPE) IS --变量声明 BEGIN UPDATE emp SET sal = sal * 1.1 WHERE empno = p_id 阅读全文
posted @ 2020-02-01 00:37 marxist 阅读(378) 评论(0) 推荐(0)
摘要: 作用: 相当于对错误作了二次处理,可以让用户看懂。 如果程序出现错误回出现回滚,加上异常处理后不会对本程序的修改回滚。 可以任何时候设置报错,从而达到中断目的。 如果程序出现错误,可以使其报错的同时完成程序其他的语句。(PL/SQL嵌套) 系统预定义异常(有名字的错误代码) TOO_MANY_ROW 阅读全文
posted @ 2020-01-31 23:48 marxist 阅读(542) 评论(0) 推荐(0)
摘要: 隐式游标 隐式游标的属性: SQL%ROWCOUNT 成功操作的行的数量 SQL%FOUND 发现复合条件的行返回TRUE SQL%NOTFOUND 没有发现复合条件的行回TRUE SQL%ISOPEN 游标打开状态(boolean) 演示:打印隐式游标属性 declare v_count numb 阅读全文
posted @ 2020-01-31 23:37 marxist 阅读(204) 评论(0) 推荐(0)
摘要: 使用IF语句按条件判断,控制PL/SQL执行流程 格式如下:if-then-end if;if-then-else-end if;if-then-elsif-then-else-end if; 演示: set serveroutput on declare v_hire_date date := t 阅读全文
posted @ 2020-01-31 23:16 marxist 阅读(240) 评论(0) 推荐(0)
摘要: 一、变量介绍 在编写pl/sql程序时,可以定义变量和常量;在pl/sql程序中包括有: 标量类型(scalar) 复合类型(composite) --用于操作多条记录 参照类型(reference) --用于操作多条记录,存放指针 lob(large object) 二、标量类型 变量初始化和关键 阅读全文
posted @ 2020-01-08 23:41 marxist 阅读(1293) 评论(0) 推荐(0)
摘要: PL/SQL语句以块为单位,块的基本结构为: declare 可选 ..变量 类型 begin 必选 .. exception 可选 .. end; 必选 / 语句块可以嵌套: DECLARE … 变量声明 x int; BEGIN --代码主体 … DECLARE --嵌套语句块 x int; … 阅读全文
posted @ 2020-01-05 16:57 marxist 阅读(280) 评论(0) 推荐(0)