使用存储过程实例: 1.不带参数 复制代码 代码如下: create procedure proc_select_officeinfo--(存储过程名) as select Id,Name from Office_Info--(sql语句) exec proc_select_officeinfo--(调用存储过程)
2.带输入参数 复制代码 代码如下: create procedure procedure_proc_GetoffinfoById --(存储过程名) @Id int--(参数名 参数类型) as select Name from dbo.Office_Info where Id=@Id--(sql语句) exec procedure_proc_GetoffinfoById 2--(存储过程名称之后,空格加上参数,多个参数中间以逗号分隔) 注:参数赋值是,第一个参数可以不写参数名称,后面传入参数,需要明确传入的是哪个参数名称
3.带输入输出参数 复制代码 代码如下: create procedure proc_office_info--(存储过程名) @Id int,@Name varchar(20) output--(参数名 参数类型)传出参数要加上output as begin select @Name=Name from dbo.Office_Info where Id=@Id --(sql语句) end declare @houseName varchar(20) --声明一个变量,获取存储过程传出来的值 exec proc_office_info--(存储过程名) 4,@houseName output--(传说参数要加output 这边如果用@变量 = OUTPUT会报错,所以换一种写法) select @houseName--(显示值)
4.带返回值的 复制代码 代码如下: create procedure proc_office_info--(存储过程名) @Id int--(参数名 参数类型) as begin if(select Name from dbo.Office_Info where Id=@Id)=null --(sql语句) begin return -1 end else begin return 1 end end declare @house varchar(20) --声明一个变量,获取存储过程传出来的值 exec @house=proc_office_info 2 --(调用存储过程,用变量接收返回值) --注:带返回值的存储过程只能为int类型的返回值 print @house