数据库的存储过程和出发器

存储过程和函数的区别是什么?
  答:存储过程是用户定义的一系列SQL语句的集合,涉及特定表或其他对象的任务,用户可以调用存储过程。
  而函数通常是数据库已经定义的方法,它接收参数并返回某种类型的值,并且不涉及特定用户表,例如聚集函数avg、max、count等,日期时间单数day、month等。
  PL/SQL(Procedural Language/SQL, PL/SQL)是编写数据库存储过程的一种过程语言,它结合了SQL的数据操纵能力
  和过程化语言的流程控制能力,是SQL的过程化扩展。
  综上PL/SQL就是对数据的操纵过程化
  存储过程的优点
  它是由PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,因此称它为存储过程,使用时只要调用即可。
  1、由于存储过程不像解释执行的SQL语句那样在提出操作请求时才进行语法分析和优化工作,因而运行效率高,
  它提供了在服务器端快速执行SQL语句的有效途径。
  2、存储过程降低了客户机和服务器之间的通信量。客户机上的应用程序只要通过网络向服务器发出存储过程的名字和参数,就可以让RDBMS执行许多条的SQL语句,并执行数据处理。只有最终处理结果才返回客户端。
  3、方便实施企业规则。可以把企业规则的运算程序写成存储过程放入数据库服务器中,由RDBMS管理,既有利于集中控制,又能方便地进行维护。当用户规则发生变化时,只需要修改存储过程,无需修改其他应用程序。
  -----------------------------------------------------------------------------------------
  触发器的作用?
  触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。


最新内容请见作者的GitHub页:http://qaseven.github.io/
上一篇:利用Python网络爬虫抓取微信好友的所在省位和城市分布及其可视化


下一篇:ORAchk-数据库健康检查