东华大学计算机科学与技术学院信息系统与数据库技术课件 第十五讲.pptVIP

  • 0
  • 0
  • 约3.4万字
  • 约 121页
  • 2019-05-06 发布于广东
  • 举报

东华大学计算机科学与技术学院信息系统与数据库技术课件 第十五讲.ppt

执行存储过程: EXEC[UTE] 存储过程名 [[@形参=]实参值| @变量 [OUTPUT]|[DEFAULT]] 说明: 1)“@形参”是创建存储过程时定义的形参名; 2)“实参值”是输入参数的值; 3)“@变量”表示用来保存参数或者返回参数的变量;OUTPUT表示指定参数为返回参数; 4)DEFAULT表示使用该参数的默认值作为实参。 5)如果有多个参数,依次列出,用逗号“,”隔开。 【例4.56】在School数据库中,创建无参数存储过程Proc_Student,查询所有学生信息。 ① 在Management Studio中,打开一个查询编辑窗口,输入代码后执行。在“School/可编程性/存储过程”下可看到Proc_Student。 ② 在查询编辑窗口执行以下调用存储过程Proc_Student的语句。 CREATE PROCEDURE Proc_Student AS SELECT * FROM Student EXEC Proc_Student 2.使用模板创建存储过程 在Management Studio中,提供了存储过程的创建模板,预先存放了主要语句代码结构,方便直接修改和补充模板中的代码来完成SQL语句。 ①可直接从模板资源管理器选中模板拖放到查询编辑窗口。 ②可通过“新建存储过程”命令使用模板。 【例4.57】在School中创建一个带有输入参数的存储过程proc_SearchStudentName,按输入姓名查询特定学生的信息。 ① 在Management Studio的“对象资源管理器”中,展开“School/可编程性/存储过程”,右击“存储过程”,选择“新建存储过程”,打开查询编辑窗口。 ② 在查询编辑窗口中,给出了创建存储过程的模板,修改相应代码后执行即可创建存储过程。该存储过程带有一个输入参数@sname,接受实参传来的学生姓名。 ③调用Proc_SearchStudentName,查询学生“林豆豆”的信息。 CREATE PROC proc_SearchStudent @sname nvarchar(20) --@sname表示姓名,是输入参数    AS SELECT * FROM Student WHERE StudentName=@sname --按@sname查询学生信息 EXEC proc_SearchStudent 林豆豆 或者: EXEC proc_SearchStudent @sname =林豆豆 3.存储过程的创建和应用实例 【例4.58】在School中创建一个带有输入和输出参数的存储过程proc_CountStudent,根据课程编号统计选修该课程的学生人数。 CREATE PROCEDURE proc_CountStudent @ccode char(3),   -- @ccode表示课程号,是输入参数 @number int OUTPUT -- @number表示选修总人数,是输出参数 AS --统计选修人数存放到@number SELECT @number =count(StudentCode) FROM Grade WHERE Grade IS NOT NULL AND CourseCode=@ccode ① 创建存储过程proc_CountStudent。 ② 调用proc_CountStudent,查询“101”课的选修人数 。 DECLARE @num int EXEC Proc_CountStudent 101, @num OUTPUT PRINT 选修101课程的学生人数:+str(@num) 【例4.59】在School中创建一个向Class表中插入班级记录的存储过程proc_ClassAdd。 ② 调用存储过程proc_ClassAdd,完成记录添加。 ① 创建存储过程proc_ClassAdd。 CREATE PROCEDURE proc_ClassAdd @ccode char(2), --@ccode表示班号,是输入参数 @cname nvarchar(10), --@cname表示班名,是输入参数 @mjname nvarchar(10) --@mjname表示@mjname,是输入参数 AS --插入数据记录到Class INSERT INTO Class(ClassCode, ClassName, MajorName) VALUES(@ccode, @cname, @mjname) EXEC proc_C

文档评论(0)

1亿VIP精品文档

相关文档