触发器、存储过程和函数三者区别

时间: 2024-11-10 00:57:13

触发器、存储过程和函数三者区别的相关文章

触发器---存储过程---存储函数

删除触发器:慎用触发器,不用就删除 触发器的特性: 1.有begin end体,begin end;之间的语句可以写的简单或者复杂 2.什么条件会触发:I.D.U 3.什么时候触发:在增删改前或者后 4.触发频率:针对每一行执行 5.触发器定义在表上,附着在表上. 也就是由事件来触发某个操作,事件包括INSERT语句,UPDATE语句和DELETE语句:可以协助应用在数据库端确保数据的完整性. 注意:cannot associate a trigger with a temporary tabl

面试问题 - SQL 中存储过程与函数的区别

SQL 中的存储过程与函数没有本质上的区别 函数 -> 只能返回一个变量. 函数可以嵌入到sql中使用, 可以在select 中调用, 而存储过程不行.  但函数也有着更多的限制,比如不能使用临时表 存储过程 -> 可以返回多个变量. 存储过程的定义如下: 存储过程可以使得对数据库的管理.以及显示关于数据库及其用户信息的工作容易得多.存储过程是 SQL 语句和可选控制流语句的预编译集合,以一个名称存储并作为一个单元处理.存储过程存储在数据库内,可由应用程序通过一个调用执行,而且允许用户声明变量

SQL中存储过程和函数的区别

本质上没区别.只是函数有如:只能返回一个变量的限制.而存储过程可以返回多个.而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行.执行的本质都一样.      函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少       1.    一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强.       2.    对于存储过程来说可以返回参数,而函数只能返回值或者表对象.       3.    存储过程

【SQL server基础】SQL存储过程和函数的区别

本质上没区别.只是函数有如:只能返回一个变量的限制.而存储过程可以返回多个.而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行.执行的本质都一样.      函数限制比较多,比如不能用临时表,只能用表变量.还有一些函数都不可用等等.而存储过程的限制相对就比较少       1.    一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强.       2.    对于存储过程来说可以返回参数,而函数只能返回值或者表对象.       3.    存储过程

数据库 --- 40 视图 触发器 存储过程 事务 函数

一.视图  (view) 视图是一种虚拟表,可以把查询出来的临时表保存下来 1.创建视图 2.删除视图 3.修改视图,(原始表的记录也跟着修改) 4.查看视图 二.  触发器(trigger)可进行  增删改  操作 1.创建触发器 2.删除触发器 实例: 三.存储过程  1. 优点: 缺点: 2.程序与数据库结合使用的三种方式 3.创建简单存储过程(无参) 4.创建存储过程(有参) ① in  传入参数 ② out  返回值 #查看存储过程的一些信息:show create procedure

存储过程与函数的区别与联系

一.函数 函数与存储过程相似,也是数据库中存储的已命名PL-SQL程序块.函数的主要特征是它必须有一个返回值.通过return来指定函数的返回类型.在函数的任何地方可以通过return expression语句从函数返回,返回类型必须和声明的返回类型一致. 二.函数和存储过程的优点: 1.共同使用的代码可以只需要被编写一次,而被需要该代码的任何应用程序调用(.net,c++,java,也可以使DLL库). 2.这种几种编写.几种维护更新.大家共享的方法,简化了应用程序的开发维护,提高了效率和性能

存储过程与函数的区别

delimiter // 将sql结束语句改为//,因为在书写过程或函数时会用到多条语句的执行,需要先改变结束符:以保证begin...end之间多条语句顺利书写. 1.存储过程实现的功能更复杂,而函数针对性更强 2.存储过程可以返回多个值,函数中只能返回一个值. 3.存储过程一般独立的执行,函数可以作为其他SQL语句的组成部分执行.

MySQL存储过程和函数的区别

1.存储过程没有返回值,而函数必须有返回值: 2.存储过程的参数可以是IN.OUT.INOUT类型,而函数的参数只能是IN类型. 版权声明:本文为博主原创文章,未经博主允许不得转载.

存储过程和函数的区别

不同点:1.标识符不同.函数的标识符为FUNCTION,过程为:PROCEDURE.2.函数中有返回值,且必须返回,而过程没有返回值.3.过程无返回值类型,不能将结果直接赋值给变量:函数有返回值类型,调用时,除在select中,必须将返回值赋给变量.4.函数可以在select语句中直接使用,而过程不能,例如:假设已有函数fun_getAVG() 返回number类型绝对值.那么select fun_getAVG(col_a) from table 这样是可以的. 相同点:二者都可以有出参 原文地