SQL数据库存储过程(一)

本文详细介绍了SQL Server中的存储过程概念及其特点,包括存储过程的类型、创建、执行、修改、删除的方法,并讲解了如何使用参数及加密存储过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

存储过程的概念
在SQL Server中,可以定义子程序存放在数据库中,这样的子程序称为存储过程,存储过程是数据库对象之一。
存储过程的特点:
(1)存储过程在服务器端运行,执行速度快。
(2)存储过程执行一次后,其执行驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译好的二进制代码执行,提高了系统性能。
(3)确保数据库的安全。使用存储过程可以完成所有的数据库操作。
(4)降低网络负载,提高效率。
(5)可以接受用户参数,亦可返回参数
存储过程的类型:
SQL Server支持以下几种类型的存储过程
1、系统存储过程(以“sp_”为前缀,存储master里)
2 、本地存储过程(存储在用户定义的数据库中)
3、扩展存储过程(以“xp_”为前缀,存储在master里)
4、临时存储过程(名字以#开头)
注意:用户定义存储过程不能以sp /xp 开头
创建存储过程
语法格式:
create procedure 存储过程名
as
sql语句
执行存储过程
语法:
exec 存储过程名
修改存储过程
语法:
alter proc 存储过程名
as
sql语句
删除存储过程
语法:
drop procedure存储过程名
查看存储过程
sp_helptext查看存储过程的定义
sp_help查看存储过程的有关信息
sp_depends查看存储过程所依据的对象.
sp_rename 存储过程原名,存储过程新名
存储过程中参数的使用
存储过程可以带一个或多个输入参数,输入参数是指由调用程序向存储过程传递的参数,它们在创建存储过程语句中被定义,在执行存储过程中给出相应的参数值。
语法:
create procedure存储过程名
(@参数名 数据类型[=默认值] [,...n])
AS 
sql语句
执行带参数的存储过程
使用参数名传递参数值
语法:
EXECUTE 存储过程名 [@参数名=参数值] [,...n]
例:execute p_a @sname=‘aaa',@pwd='123' 
按参数位置传递参数值
语法:
EXECUTE 存储过程名   参数值1,参数值2
例: execute p_a ‘aaa','123
加密存储过程
存储过程也可通过权限设置,来控制各种用户的执行操作,还可加密来保证存储过程创建文本的安全,加密方法同视图
create proc p_mi
(
参数组
)
with encryption--加密
As
sql语句

带输出参数的存储过程
如果需要从存储过程中返回一个或多个值,可以通过在创建存储过程的语句中定义输出参数来实现,为了使用输出参数,需要在CREATE PROCEDURE语句中指定OUTPUT关键字
语法:
CREATE PROCEDURE 存储过程名
@参数名 数据类型  OUTPUT [,...n]
AS 
SQL语句
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值