SQL--存储过程的使用
存储过程的概念
存储过程类似一个函数,可以执行一条或者多条SQL语句,可带参数,可返回值
为了简化操作,方便更改和扩展,将一个事件的处理封装在一个单元中供使用。
创建存储过程
--创建存储过程(不带参数的)
create proc sp_sample as select * from sample --创建存储过程(带参数的) create proc sp_insert_sample @No char(10), @name varchar(20),@age int as insert into sample values(@No,@name,@age) --更新记录的存储过程 create proc sp_updatebyid_sample @id int, @No char(10), @name varchar(20),@age int as update sample set No=@No,name=@name,age=@age where id=@id --删除记录的存储过程 create proc sp_deletebyid_sample @id int as delete from sample where id=@id
执行存储过程
--执行过程 exec sp_selectall_sample --执行带参数的过程 exec sp_insert_sample '1001','小明',21 --执行更新 exec sp_updatebyid_sample 11,'1002','小华',18 --执行删除记录的存储过程 exec sp_deletebyid_sample 11
创建和执行带输出的存储过程
--带输出参数的存储过程 create proc sp_count_sample @age int, @num int output --输出的参数,接收的时候一定要声明 as select @num=COUNT(*) from sample where age=@age --执行带输出参数的存储过程 declare @num int --必须declare变量@num exec sp_count_sample 18,@num output select @num --用select输出
删除存储过程
drop proc sp_count_sample
修改已经创建的存储过程