💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# 触发器-存储过程 ### 什么是存储过程? **事先经过编译并存储在数据库中的一段sql语句的 集合** 存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。 ### 什么是触发器? 触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。 ``` • 创建存储过程: create procedure 存储过程名 ([proc_parameter[,…]]) [characteristic…]routine_body • 创建函数: create function 函数名([func_parameter[,…]]) returns type [characteristic…]routine_body • 调用存储过程: call 存储过程名(参数列表) • 调用函数: Select 函数名(参数列表) • 修改存储过程: alter procedure 存储过程名 [charactristic…] • 修改函数: alter function 函数名 [charactristic…] 说明:一次只能删除一个存储过程或者函数,并且要求有该 过程或函数的alter routine 权限 删除存储过程: drop procedure [if exists] 存储过程名 删除函数: drop function [if exists] 函数名 ```