+ -
当前位置:首页 → 问答吧 → 【goto和return】接上一帖,想讨论下,麻烦大神们给点经验

【goto和return】接上一帖,想讨论下,麻烦大神们给点经验

时间:2011-11-10

来源:互联网

新开个帖子讨论下:

刚才突然想到一点,是否用了@runflag这个做标识
排查问题的时候可以print @runflag看看是怎样跳出嵌套的?
而return不行?
不过好像有点牵强。。。
还希望有经验的人给点意见。。。什么情况用return会有影响?

goto对可读性造成很大的困扰,这个可以不讨论,主要想问下return的问题。

上帖链接:
http://topic.csdn.net/u/20111110/17/80e20697-80d9-45bf-b52a-d2c8b4b96e32.html?73122

作者: geniuswjt   发布时间: 2011-11-10

goto 在大多数情况下是在抛出错误时设置的,既然SQL里保留,就有存在价值.
你这个@runflag是干什么用的呢?在 08 里就有调试功能了,你要调试可以直接看到你程序里的局部变量和监视,用不着去print的.

作者: qianjin036a   发布时间: 2011-11-10

还有个问题,在事务里(也比如触发器里,因为触发器本身就是个事务)用return,会怎样?
rollback是回滚,return应该只是它后面的语句不执行了,如果确认要停止的话,用return不会怎样吧。

作者: geniuswjt   发布时间: 2011-11-10

公司服务器用的05,我自己机器装的08,在05上我估计只能print来找错。。。
引用 1 楼 qianjin036a 的回复:

goto 在大多数情况下是在抛出错误时设置的,既然SQL里保留,就有存在价值.
你这个@runflag是干什么用的呢?在 08 里就有调试功能了,你要调试可以直接看到你程序里的局部变量和监视,用不着去print的.

作者: geniuswjt   发布时间: 2011-11-10


大神们都没有这个困扰么,你们平常用怎样的方式呢
或者你们公司规定用怎样的方式。。。
就是问问大家的经验。

作者: geniuswjt   发布时间: 2011-11-10

return在程序里是返回到开始部分,后面的不执行,在触发器中也是一样的调用方式

作者: ssp2009   发布时间: 2011-11-10