存储过程问题???????????
具体如下:
CREATE PROCEDURE p_sz_foundFaction
@userid int,
@factionname varchar(20)
AS
set nocount on
begin transaction
declare @id int
set @id = -1
select id from t_faction where FactionName = @factionname
if @@rowcount <= 0
begin
insert into t_faction (FactionName, userid) values (@factionname, @userid)
--select @id = id from t_faction where userid = @userid
当执行到这时出错,下面这句不会执行,并且放到到insert前也不执行
update t_user set faction = 1 where userid = @userid
select 0
goto endpos
end
select 1
goto endpos
errorpos:
rollback transaction
return
endpos:
commit transaction
return
GO
相关推荐
oracle存储过程编译错误问题
NULL 博文链接:https://forlab.iteye.com/blog/1821751
解决存储过程被锁无法编译的问题
解决存储过程被锁无法编译的问题解决存储过程被锁无法编译的问题解决存储过程被锁无法编译的问题解决存储过程被锁无法编译的问题
ORACLE存储过程最全教程
超实用最全的ORACLE教程
MySQL存储过程的权限问题小结
MySQL的存储过程,没错,看起来好生僻的使用场景。问题源于一个开发同学提交了权限申请的工单,需要开通一些权限。 本来是一个很正常的操作,但在我来看是比较着急且紧迫的,说来惭愧,忙着方向规划和开发的事情,这个基础的操作功能竟然给忽略了,所以看到目前的一些实现方式,还是希望能够做一些细小的事情把这些重复性的工作给解放了。 当然我决定把一些基础性的工作接过来,一方面是给同事减压,另一方面是在做一个完整的体验,因为很多需求和痛点通过实践是能够很容易捕捉到重点的,如果我觉得不合理,那么这个过程中势必会有一些改进的地方。比如部署安装,比如权限开通。数据库的权限开通就是一个相对典型的案例,而存储过程的权限
mysql多次调用存储过程的问题
问题是这样的,在直接使用mysql c api构建应用的时候,一个连接只能执行一次存储过程,不管怎样free再次利用这个连接的时候就会出现不能执行qurry的提示,我想,这么大型的软件 不会存在这样的基础性问题吧,毕竟大多数的adodb都是基于c api的,难道所有的软件都无法进行连接缓存? 别说,接触到这类问题的人还真不多,大多数的连接池都写好了,谁会去直接构建连接进行操作呢,所以baidu google基本都没有结果,今天回头来解决这个问题,突然就有了突破,找到了一篇文章《对Mysql的C API调用存储过程的问题及解决方法分析》,正是我的问题。 作者分析的挺复杂了,其实我们一般只用mys



