- 6
- 0
- 约1.36万字
- 约 55页
- 2017-06-19 发布于湖北
- 举报
数据库 教师: 田 勇 tianyong@ 矫志杰 jiaozj@163.com 第五章 高级数据访问 创建SQL调用例程 使用SQL游标 创建SQL触发器 管理SQL事务 创建SQL调用例程 存储过程 存储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。 存储过程可以返回一个或多个结果集。 存储过程优点:高速度、可重用性、商业逻辑封装、减少网络拥挤以及安全性等。 创建SQL调用例程 SQL Server存储过程创建基本语法 CREATE PROC proc_name( [@para data_type [ = default ] [ OUTPUT ] ] [ ,...n ] ) AS? sql_statement [ ...n ] 参数包含的括号可以省略,AS 关键字表示存储过程主体的开始,存储过程主体是一个或者多个SQL 语句。 参数名称以@开始,如果有多个参数,用逗号将参数声明分开。 如果当调用存储过程时没有提供参数,可以定义一个缺省的输入值。 调用存储过程: exec [execute] proc_name para [output],… 如果是输出参数,需要添加 output 关键字 创建SQL调用例程 存储过程示例: create proc addnum(@a int,@b int,@c int output)AS set @c=@a+@b; declare @result int;execute addnum 1,2,@result output;print @result; 创建SQL调用例程 存储过程示例: create proc find(@gzmin float =500,@gzmax float =1000)AS select * from 工资库 where 工资 between @gzmin and @gzmax; execute find; execute find 700,1200; execute find 700; execute find ,900;错误写法 创建SQL调用例程 存储过程示例: create proc findclass (@num nchar(10),@classname nchar(20) output) as begin declare @mystr nchar(10); select @mystr=课程编号 from 选课 where 学号=@num; select @classname=课程名称 from 课程 where 课程编号=@mystr; end; declare @name nchar(20) exec findclass 95001,@name output; print @name; 创建SQL调用例程 存储过程说明 如果存储过程由多条语句组成,建议使用 Begin…End; 存储过程为其每一个Select语句返回结果集; 存储过程可以使用Return返回状态值,可用于判断执行状态; Create proc addnum(@i int , @j int , @result int output)ASbegin if(@i0 or @j0) return -1; set @result=@i + @j ; return 0;end; Declare @status int , @result int ; Exec @status=addnum 5, 8, @result output ; select @result , @status ; 创建SQL调用例程 可以在存储过程中任何地方添加注释; -- , /*…*/ 存储过程可以使用 SELECT , UPDATE , DELETE 等SQL数据查询和修改语句; Create proc modifyTable( @职称名称 char(10) , @增长系数 float ) ASupdate 工资库 set 工资=(1+@增长系数)*工资where 职称= @职称名称; 存储过程可以使用 IF , WHILE , GOTO , WAITFOR等流程控制语句; Create proc jc (@n int , @result int output ) ASbegin declare @i int ; select @i=1 , @result=1; while ( @i= @n) begin
您可能关注的文档
最近下载
- 机动车驾驶人科目一考试题库英文版共1500道题Chinese Driving Theory Test Question Bank.pdf VIP
- 高考语文阅读理解《心灵的绝唱:红楼梦论痕》《红楼梦美学意蕴结构分析》含答案解析.docx VIP
- 2025年宁夏中考试卷2025真题及答案.doc VIP
- QSH0045-2007_钻井液用超细碳酸钙技术要求.pdf VIP
- 2026年1月浙江省高考选考化学模拟试卷试题(含答案详解).pdf VIP
- 2026年1月浙江省高考选考物理模拟试卷试题(含答案详解).pdf VIP
- 2025年常州工业职业技术学院单招(语文)测试试卷大全.docx VIP
- 2025年1月浙江省高考选考生物试卷真题(含答案详解).docx VIP
- 2026年1月浙江省高考首考英语试卷真题完整版(含答案详解).pdf VIP
- 酒店营销年度工作计划,酒店营销全年工作计划.doc VIP
原创力文档

文档评论(0)