日期:2014-01-27 浏览次数:20796 次
3、  GOTO语句
在存储过程的执行中,语句是顺序执行的。GOTO语句则是用来打破这种语句执行的顺序,它立即跳到某条语句上执行,而这条语句往往不紧跟在前一语句之后。GOTO语句与一个标志(Label)一起使用,该标志用来标识一条语句。
例如:
USE pubs
GO
DECLARE @num int
SELECT
IF @num = 0
       GOTO Err
ELSE
       BEGIN
       PRINT ‘authors found’
       SELECT * FROM authors
       GOTO Last
       END
Err: PRINT ‘no authors found’
Last: PRINT ‘Finish execution’
GO
4、  RETURN语句
RETURN语句用于无条件的退出存储过程。RETURN之后的任何语句都不再执行。RETURN语句可以给调用语句返回一个值,但不能返回NULL值。SQL Server经常为存储过程返回一个状态值。如果成功地执行,则返回一个0,如果出现了错误,则返回一个为负数的错误码。
存储过程返回的错误码
值 
说        明 
值 
说        明 
0 
过程执行成功 
-8 
发生了非致命的内部问题 
-1 
漏掉了对象 
-9 
达到了系统极限 
-2 
发生了数据类型错误 
-10 
发生了致命的内部不一致错误 
-3 
该处理被选择成了死锁的牺牲者 
-11 
发生了致命的内部不一致错误 
-4 
发生了权限错误 
-12 
表或索引被破坏 
-5 
发生了语法错误 
-13 
数据库被破坏 
-6 
发生了混杂的用户错误 
-14 
发生了硬件错误 
-7 
资源错误,如空间不够等 
5、  使用游标(CURSOR)在需要一行一行处理时,游标十分有用。游标可以打开一个结果集合(按照指定的标准选择的行),并提供在结果集中一行一行处理的功能。基于游标的类型,可以对其进行回滚或者前进。在使用游标时需要5个步骤: