跳至内容

存储过程

存储过程是存储在数据库中的小程序(一段预编译的 SQL 代码)。这篇讲存储过程的分类,以及创建、执行、修改、删除操作。

分类

类型命名规则存放位置
系统存储过程sp_ 为前缀master
扩展存储过程xp_ 为前缀master
临时存储过程# 开头tempdb
用户定义存储过程不能以 sp/xp 开头用户数据库

创建存储过程

不带参数:

USE 数据库名
GO
CREATE PROCEDURE 存储过程名   -- 定义过程名
AS
    SQL 语句……               -- 执行操作,实现某种功能
GO

带输入参数:

USE 数据库名
GO
CREATE PROC 存储过程名         -- PROC 是 PROCEDURE 的缩写
    @变量名1 数据类型,         -- 定义输入参数
    ……
    @变量名n 数据类型
AS
    SQL 语句                   -- 执行操作
GO

执行存储过程

-- 执行不带参数的存储过程
EXEC 存储过程名

-- 执行带参数的存储过程
EXEC 存储过程名
    @变量名1 = ,
    ……
    @变量名n = 

修改与删除

-- 修改
USE 数据库名
GO
ALTER PROCEDURE 存储过程名
AS
    SQL 语句
GO

-- 删除(可一次删除多个)
DROP PROCEDURE 存储过程名1, …… 存储过程名n
最后更新于