内容正文:
6.1存储过程
存储过程
存储过程
简介
SSMS创建存储过程
T-SQL创建和执行存储过程
修改和删除存储过程
常用系统存储过程
学习要点
存储过程
简介
定义:
SQL Server提供的一种方法,它可以将一些固定的操作集中起来由SQL Server数据库服务器来完成,以实现某个任务
分类
系统提供的存储过程
定义的存储过程
扩展存储过程
存储过程
存储过程
SSMS创建存储过程
Step1:
展开数据库→右键选择“存储过程” →快捷菜单
next
存储过程
SSMS创建存储过程
Step2:
打开“新建存储过程”对话框 →书写存储过程定义
next
存储过程
SSMS创建存储过程
Step3:
查看存储过程
存储过程
存储过程
T-SQL创建和执行存储过程
基本语句
创建:
执行:
示例
存储过程: 【例6-26】
执行存储过程:【例6-27】
综合 【例6-28】
存储过程
CREATE PROC[EDURE] 存储过程名
[ {@参数1 数据类型} [= 默认值] [OUTPUT],
…… ,
{@参数n 数据类型} [= 默认值] [OUTPUT]
]
AS
SQL语句
……
[ EXEC] procedure_name [Value_List]
【例6-26】
创建一存储过程,检索信息021班学生的记录
返回
USE student
GO
CREATE PROCEDURE pr_information
AS
SELECT s_name,s_address FROM information
WHERE s_class='信息021'
【例6-27】
执行一个名为pr_student的存储过程
返回结果
返回
USE student
GO
pr_studnet
【例6-28】
创建一存储过程,检索信息021班学生的记录
调用AddCourse存储过程插入一条课程号为gdsx、课程名为高等数学、学分为3的记录
返回
USE student
GO
CREATE PROC AddCourse
(
@c_no VARCHAR(12),
@c_name VARCHAR(20),
@c_credit INT,
@c_type VARCHAR(12)
)
AS
INSERT INTO course
VALUES(@c_no, @c_name, @c_credit,@c_type)
EXEC AddCourse 'gdsx','1001高等数学(2)',3,'基础课'
存储过程
修改和删除存储过程
基本语句格式
修改
删除
示例
修改【例6-32】
存储过程
CREATE PROC[EDURE] 存储过程名
[ {@参数1 数据类型} [= 默认值] [OUTPUT],
…… ,
{@参数n 数据类型} [= 默认值] [OUTPUT]
]
AS
SQL语句
DROP PROCEDURE 存储过程名
【例6-32】
修改存储过程
返回
USE student
GO
--创建存储过程p_1
CREATE proc p_1
As
SELECT * FROM course
GO
--修改存储过程p_1
ALTER PROC p_1
AS
SELECT s_name,s_address FROM information
WHERE s_class='信息021'
GO
EXEC p_1
返回结果
存储过程
常用系统存储过程
sp_help
sp_helptext
sp_depends
sp_stored_procedures
sp_rename
存储过程
常用存储过程
sp_help
显示存储过程的参数及其数据类型
基本语句格式
返回
sp_help [ [@objname=] name]
存储过程的名称
常用存储过程
sp_helptext
显示存储过程的源代码
基本语句格式
返回
sp_helptext [ [@objname=] name]
常用存储过程
sp_depends
显示和存储过程相关的数据库对象
基本语句格式
返回
sp_depENDs [@objname=]’object’
为要查看依赖关系
的存储过程的名称
常用存储过程
sp_stored_procedures
返回当前数据库中的存储过程列表
返回
常用存储过程
sp_rename
重命名存储过程
返回
sp_rename 原存储过程名称,新存储过程名称
$$