1。什么是存储过程?
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL语句集。他存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数来执行它。
2。存储过程特点(好处)
1-存储过程存储在数据库中,一次编译永久有效。
2-存储过程有更好的安全性。
3-存储过程可以减少网络通信流量。
1-减少了SQL字符串的传递,传递的只有存储过程名字和参数。
2-减少了SQL来回处理传递的次数。能一次获取符合条件的数据结果;而不是在代码和数据库中多次调用,来回传递SQL字符串和结果。减少了IO操作。
4-存储过程提高运行速度。原因同3。
存储过程适用于业务比较复杂、数据量庞大的系统。
2。存储过程分类
1-系统存储过程,数据库自带的,以sp_开头。
2-本地存储过程,用户创建完成某一特定功能的存储过程。一般说的存储过程指这种存储过程。
3-临时存储过程,
第一种:本地临时存储过程:以#开头,存放在tempdb数据库中的本地临时存储过程,只有创建它的用户可执行。
第二种:全局临时存储过程:以##开头,存放在tempdb数据库中的本地临时存储过程,任意用户可执行,且不需要特定权限。
4-远程存储过程
在SQLServer2005中,Romte Stored Procedures位于远程服务器上的存储过程,通常可以使用分布式查询和EXECUTE命令执行一个远程存储过程。
5-扩展存储过程
Extended Stored Procedures是客户可以使用外部程序语言编写的存储过程,扩展存储过程通常以xp_开头
2。基本语法
1-创建存储过程
create procedure [存储过程名] @[参数名] [参数类型], @[参数名] [参数类型] as begin -- SQL语句 end
2-调用存储过程
1- command命令下,exec [存储过程名] [参数];
2- SQL环境下,call [存储过程名] [参数];
3- PL/SQL环境下,begin [存储过程名] [参数] end;
3-删除存储过程
drop procedure sp_name
注意,不能在存储过程中删除存储过程。
标签:存储,数据库,DB,Stored,参数,SQL,过程 From: https://www.cnblogs.com/TonyZhao/p/16634335.html