`
duoluohua
  • 浏览: 14271 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Oracle之函数与触发器

 
阅读更多

有关Oracle中函数与触发器的内容,在数据库中定义并使用存储过程、函数、触发器,可以提高用户访问数据库的效率。

数据库中函数包含四个部分:声明、返回值、函数体和异常处理

1createorreplacefunctiongetname(snovarchar2 )
2returnvarcharis

3namevarchar(12 );
4begin

5selectenameintonamefromempwhereempno= sno;
6return
name;
7
exception
8 ...

12end ;
13


触发器是一种特殊的存储过程,类似于其它编程语言中的事件函数,允许为 INSERT、UPDATE、DELETE 创建触发器,当在表(视图)中插入、更新、删除记录(前、后)时,触发一个或一系列 T-SQL 语句。

创建在
STUDENT 表上的插入触发器,当在 STUDENT 表中插入数据时候触发器将被触发,执行体将被执行

插入触发器
1
createorreplacetrigger
tg_insert
2beforeinsertonstudent --
可设置在插入前或插入后
3begin

4 ...
5end ;


更新触发器
8 createorreplacetrigger
tg_update
9afterupdateon
student
10foreachrow

12begin
13 ...
14END ;
15

 

触发器两个特殊行级变量: :New 新值 和 :Old 旧值 分别代表更新值,被更新的值

1createorreplacetrigger tg_insert
2afterupdateon
student
3for
eachrow
4when(:old.sex=’j’) --
当old.sex为J时候才执行触发器内容
5begin

7DBMS_OUTPUT.PUT_LINE(:new.stuname||''|| :old.stuname);
8DBMS_OUTPUT.PUT_LINE(:new.sex||''||
:old.sex);
9end
;
10

 

判断复合型触发器

1createorreplacetrigger trgstudeng
2beforeinsertorupdateordeleteon
student
3for
eachrow
4begin

5ifinsertingthen
6 ...
8endif ;
9ifdeletingthen

10 ...
12endif ;
13
exception
14 ...

16END ;
17


触发器功能强大,可以实现许多复杂的功能,但如果滥用会造成数据库及应用程序的维护困难。

分享到:
评论

相关推荐

    存储过程、函数、触发器和包

    存储过程、函数、触发器和包

    oracle函数触发器游标等几个小例子

    Oracle数据库是世界上最流行的数据库管理系统之一,它提供了丰富的功能来处理数据,包括函数、游标和触发器。在本文中,我们将深入探讨这些概念,并通过一些实际的例子来理解它们的用法。 1. **Oracle函数**:函数...

    oracle存储过程、函数和触发器

    其中,存储过程、函数和触发器是Oracle数据库中的重要组件,它们极大地增强了数据库的灵活性和性能。接下来,我们将深入探讨这三个核心概念及其应用。 1. 存储过程: 存储过程是一组预先编译的SQL语句,存储在...

    Oracle中通过触发器来追踪用户的活动

    注销触发器的关键在于找到与登录事件相对应的行,这通常通过会话ID来实现,因为每个会话的会话ID都是独一无二的。通过匹配登录和注销时的会话ID,可以确保信息的正确关联,即使有多个用户使用相同的用户名登录。 在...

    oracle笔记(存储过程函数触发器游标流程控制等)

    这份"oracle笔记(存储过程函数触发器游标流程控制等)"涵盖了Oracle数据库管理中的关键知识点,包括但不限于以下几个方面: 1. **存储过程与函数**:存储过程是预编译的SQL语句集合,用于执行特定任务。它们可以提高...

    oracle触发器的创建与使用

    【Oracle触发器的创建与使用】是数据库管理中不可或缺的一部分,尤其在Oracle数据库系统中,触发器扮演着关键角色。触发器是一种存储过程,当特定的数据库事件发生时(如INSERT、UPDATE或DELETE操作),它会被自动...

    oracle pl/sql 存储过程和函数与触发器

    总之,Oracle PL/SQL中的存储过程、函数和触发器为数据库开发提供了强大的工具,它们使得数据库不仅仅是一个数据存储的地方,更是业务逻辑的执行平台。深入理解和熟练掌握这些概念,对于任何Oracle数据库管理员或...

    oracle 触发器实时调用java 中http接口

    总之,"Oracle触发器实时调用Java中HTTP接口"是一个数据库与应用程序实时通信的示例,涉及Oracle的触发器、存储过程和UTL_HTTP包,以及Java HTTP服务器的设计和实现。这样的设计需要对Oracle PL/SQL和Java网络编程有...

    关于oracle触发器before和after的应用问题

    #### DML触发器与替代触发器 - **DML触发器**:这类触发器可在数据操纵语言(DML)操作前或后触发,适用于单个行或整个语句级别。行级触发器针对每一条受影响的记录分别执行,而语句级触发器则在整个DML语句执行...

    Oracle基于系统级触发器的审计功能

    ### Oracle基于系统级触发器的审计功能 #### 引言 在现代企业的信息化管理中,数据库的安全性至关重要。为了确保数据安全与合规性,数据库管理系统(DBMS)提供了多种审计手段,其中一种重要的机制就是利用系统级...

    oracle存储过程、函数、触发器应用举例

    ### Oracle存储过程、函数、触发器应用举例 #### 一、存储过程 **1.1 存储过程的概念** 存储过程是一种预编译的SQL代码集合,它可以在Oracle数据库服务器上执行复杂的逻辑处理任务。存储过程可以接受输入参数并...

    oracle存储结构、触发器、函数学习

    在学习这些概念时,"oracle存储过程.java"、"oracle触发器.java"和"oracle函数定义.java"这三个文件可能包含了相关的Java代码示例,这些示例通常会演示如何在Java应用程序中调用Oracle数据库的存储过程、触发器和...

    练习利用PLSQL Developer编写和管理存储过程、存储函数和触发器等

    PLSQL Developer是一种功能强大的Oracle数据库开发工具,提供了许多功能来帮助开发者快速编写和管理存储过程、存储函数和触发器等高级数据库对象。本文将详细介绍如何使用PLSQL Developer编写和管理存储过程、存储...

    1-oracle培训整套教程(存储过程-函数-触发器,异常处理,游标.存储包)

    你可以学习如何创建自定义函数,以及如何在SQL查询和存储过程中使用这些函数,这在`1-oracle教程之存储过程-函数-触发器.ppt`中会有详细介绍。 触发器是数据库响应特定事件(如INSERT、UPDATE或DELETE)时自动执行...

    jansu-dev#Oracle-Learning-Notes#[Oracle]--触发器加密函数1

    title:[Oracle]--触发器加密函数利用数据库触发器和函数给数据库内容加密。加密函数一例:给数据库183添加加密函数YOURPASSWORD:手动设置

    个人亲测oracle触发器调用java程序

    Oracle触发器调用Java程序 Oracle触发器是Oracle数据库中的一种机制,可以在数据库中执行特定的操作。在本文中,我们将介绍如何使用Oracle触发器调用Java程序。 一、加载Java程序 首先,我们需要将Java程序加载到...

    存储过程,存储函数和触发器

    根据提供的信息,我们可以深入探讨存储过程、存储函数与触发器的相关知识点。 ### 存储过程 存储过程是一种预编译的SQL代码块,它被存储在数据库中,并且可以通过简单的调用来执行复杂的逻辑操作。存储过程可以...

    oracle高级语法(事物、函数、存储过程、触发器、异常)[参照].pdf

    Oracle 高级语法是指在 Oracle 数据库管理系统中使用的高级语法结构,包括事务、函数、存储过程、触发器、异常等。这些语法结构是 Oracle 数据库开发和管理的核心内容,对于数据库开发者和管理员来说是必备的知识。 ...

    Oracle触发器与存储过程高级编程-第3版itpub.rar

    《Oracle触发器与存储过程高级编程》第3版是一本深入探讨Oracle数据库中触发器和存储过程技术的专业书籍。在Oracle数据库系统中,触发器和存储过程是数据库管理员和开发人员进行复杂业务逻辑处理和数据管理的重要...

    oracle中记录用户登录信息的触发器的例子

    ### Oracle中记录用户登录信息的触发器实例解析 #### 一、背景介绍 在Oracle数据库管理中,确保数据安全是一项至关重要的任务。其中,记录用户的登录信息(如登录时间、用户名和客户端IP地址等)可以帮助管理员更...

Global site tag (gtag.js) - Google Analytics