create table student
(
id int identity(1,1),--递增1,
stuNo varchar(50) primary key, --唯一键
stuName varchar(50),
stuAge datetime,
stuSex varchar(5)
)
--创建用户分数数据表
create table course
(
id int identity(1,1),--递增1,
stuNo varchar(50),
courseName varchar(50),
courseScore decimal
)
--插入数据
insert into student(stuNo,stuName,stuAge,stuSex) values('01','王男','1996-08-27 09:00:00.000','男')
insert into student values('02','杨幂','1995-4-20 6:0:0','女'),
('03','程峰','1988-9-17 15:30:0','男')
insert into course values('02','思想政治','85.5'),
('02','数学','70'),
('02','语文','80'),
('02','物理','90'),
('02','化学','65'),
('02','英语','96')
insert into course values('03','思想政治','60'),
('03','数学','65'),
('03','语文','84'),
('03','物理','70'),
('03','化学','76'),
('03','英语','54')
--1.创建存储过程
create procedure proc_1
as
begin
select * from student
end
go
--调用存储过程
execute proc_1
--2.创建存储过程
create procedure proc_1
@a int, --声明全局变量
@b varchar(9)
as
begin
select * from student where stuName like @b
end
go
--调用有参存储过程时,参数不能少。形参与实参按位置对应
execute proc_1 1,'杨_'
--把参数放在括号中也是一样的
create procedure proc_1(
@a int, --声明全局变量
@b varchar(9)
)
as
begin
select * from student where stuName like @b
end
go
--调用有参存储过程时,参数不能少。形参与实参按位置对应
execute proc_1 1,'杨_'
--3.创建存储过程
create procedure proc_1
@a int,
@b varchar(9)='_幂' --声明全局变量,有初始值
as
begin
select * from student where stuName like @b
end
go
--调用存储过程,@b有默认值可以不传参,也可以传默认值,传的值会代替初始值
execute proc_1 1,default
--3.创建存储过程
create procedure proc_1
@a int,
@b varchar(9)='_幂' --声明全局变量,有初始值
as
begin
--set @name=*或select @name=*,给变量赋值
set @b =(select stuName from student where stuName like @b)
end
select @b --select @name 输出结果
go
--
execute proc_1 1
--4.创建存储过程
create procedure proc_1
@a int output,
@b varchar(9)='_幂' output
as
begin
set @b =(select stuName from student where stuName like @b)
end
select @a --@a输出传来的@a1
select @b
go
declare @a1 int,@b1 varchar(9) -- declare声明变量
set @a1=2
--output表示用于得到返回的数据,需要传变量
--传output参数时,形参必须声明为output
execute proc_1 @a1 output
--输出返回的@a值
select @a1
--查看数据库里的所有存储过程
select * from sysobjects where xtype='p'
--查看存储过程信息
execute sp_helptext proc_name1
--删除
drop procedure proc_name1