登录  /  注册
首页 > 数据库 > Oracle > 正文

oracle中触发器和存储过程是什么

青灯夜游
发布: 2022-01-25 16:49:57
原创
2475人浏览过
oracle中,存储过程是一组为了完成特定功能的sql语句,存储在数据库中,存储过程能够反复使用,减少开发人员工作量;而触发器是数据库提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程。

oracle中触发器和存储过程是什么

本教程操作环境:Windows7系统、Oracle 11g版、Dell G3电脑。

oracle中触发器是什么

触发器(trigger)是数据库提供给程序员和数据分析员来保证数据完整性的一种方法,它是与表事件相关的特殊的存储过程。由事件触发。

触发器在触发一定事件的时候隐式执行的一段sql语句,触发器不能接收参数。Oracle触发器则是触发Oracle数据库中对数据库进行insert、update、delete操作或对视图进行类似的操作,还有一些系统的事件,比如数据库的关闭或开启。

触发器的分类有哪些?

    (1)、数据操纵语言(DML)触发器:创建在表上,有DML时间来触发的触发器;

    (2)、替代(instead of)触发器:创建在视图上,用来替换对视图进行添加、修改和删除操作。

    (3)、数据定义语言(DDL)触发器:定义在模式上,触发事件是对数据库对象的创建和修改操作。

    (4)、数据库系统触发器:定义在整个数据库上,触发的时间是数据库的操作,比如数据库的启动和关闭。

触发器的组成部分有哪些?

    (1)、触发的事件:即在何种情况下触发trigger,例如:insert、update、delete。

    (2)、触发的时间:即该trigger是在触发事件之前(before)还是在触发事件之后(after),也是触发的事件和该trigger主体的先后顺序。

    (3)、触发器本身:即触发器在触发事件的时候要执行的操作,例如:pl/sql块。

    (4)、触发的频率:说明该触发器内定义的动作被执行的次数。即语句级触发器和行级触发器。语句级触发器是指当某个事件发生时,该触发器只执行一次。而行级触发器,在某个事件发生时,对受到该操作影响的每一行数据,都会单独执行一次触发器。

oracle中存储过程是什么

存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来调用存储过程。

简单的说就是专门干一件事一段sql语句。

存储过程能够反复使用,减少开发人员工作量。

在oracle数据库中存储过程是procedure。

为什么要写存储过程

1.效率高

存储过程编译一次后,就会存到数据库,每次调用时都直接执行。而普通的sql语句我们要保存到其他地方(例如:记事本 上),都要先分析编译才会执行。所以想对而言存储过程效率更高。

2.降低网络流量

存储过程编译好会放在数据库,我们在远程调用时,不会传输大量的字符串类型的sql语句。

3.复用性高

存储过程往往是针对一个特定的功能编写的,当再需要完成这个特定的功能时,可以再次调用该存储过程。

4.可维护性高

当功能要求发生小的变化时,修改之前的存储过程比较容易,花费精力少。

5.安全性高

完成某个特定功能的存储过程一般只有特定的用户可以使用,具有使用身份限制,更安全。

推荐教程:《Oracle教程

以上就是oracle中触发器和存储过程是什么的详细内容,更多请关注php中文网其它相关文章!

智能AI问答
PHP中文网智能助手能迅速回答你的编程问题,提供实时的代码和解决方案,帮助你解决各种难题。不仅如此,它还能提供编程资源和学习指导,帮助你快速提升编程技能。无论你是初学者还是专业人士,AI智能助手都能成为你的可靠助手,助力你在编程领域取得更大的成就。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
最新问题
关于CSS思维导图的课件在哪? 课件
凡人来自于2024-04-16 10:10:18
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2024 //m.sbmmt.com/ All Rights Reserved | php.cn | 湘ICP备2023035733号