存储过程执行的阻塞问题,急! 问题应该不在这个存储过程,请问数据表的触发器/索引什么的情况@error_2 你没有给赋值啊,永远回滚哦 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 --试试create procedure dbo.sq_delete_paymoney@as_zfzt varchar(15), --支付状态@as_fhzt varchar(15), --订单状态@as_ddh varchar(30), --订单号@al_customerid integer, --客户编号@ade_amt decimal, --变化金额@al_item int, --来款序号@as_return char(1) output as --来款信息删除处理declare @err_1 int,@error_2 int,@error_3 int,@error_4 int SET XACT_ABORTbegin tran --删除当前记录 delete sale_pre_accepted_item where item =@al_item and sequ_order=@as_ddh; select @error_1 = @@error --更新订单表的状态 update order_simple set zfzt =@as_zfzt,fhzt =@as_fhzt where ddh=@as_ddh; select @error_3 = @@error --更新客户表的余额数 update btoc_personal_member set Total_balance = Total_balance - @ade_amt where khbh =@al_customerid; select @error_4 = @@error if @error_1 =0 and @error_2 =0 and @error_3 =0 and @error_4 =0 begin --成功 set @as_return ='1' commit tran end else --失败 set @as_return ='0' end go 从来没用过 SET XACT_ABORT。从来没用过 begin tran 和 commit tran 。呵呵,新鲜吗?我很难得见到阻塞的场面。 SQL 求一条sql求和语句 求教1 sql 翻译名称 语句 存储过程中,表名是变量,如何执行一个select语句,并把查询的统计值赋给一变量? 急切请教:如何将SQL70(英文版本)升级至SQL2000(中文版本)??? 系统作业调用过程死锁,求解? 求触发器调用存储过程代码加说明 怎么在Sql2000中创建动态的临时表 数据库怎么样识别分析SQL语句并执行? 关于调用存储过程(SQL SERVER) 实用的搜索引擎式关键字查询存储过程给大家参考,随便请大家测试一下! ^_^ 请教各位大侠一个好象很低级的问题
create procedure dbo.sq_delete_paymoney
@as_zfzt varchar(15), --支付状态
@as_fhzt varchar(15), --订单状态
@as_ddh varchar(30), --订单号
@al_customerid integer, --客户编号
@ade_amt decimal, --变化金额
@al_item int, --来款序号
@as_return char(1) output
as
--来款信息删除处理
declare @err_1 int,@error_2 int,@error_3 int,@error_4 int
SET XACT_ABORT
begin tran
--删除当前记录
delete sale_pre_accepted_item where item =@al_item and sequ_order=@as_ddh;
select @error_1 = @@error
--更新订单表的状态
update order_simple set zfzt =@as_zfzt,fhzt =@as_fhzt where ddh=@as_ddh;
select @error_3 = @@error
--更新客户表的余额数
update btoc_personal_member set Total_balance = Total_balance - @ade_amt where khbh =@al_customerid;
select @error_4 = @@error
if @error_1 =0 and @error_2 =0 and @error_3 =0 and @error_4 =0
begin --成功
set @as_return ='1'
commit tran
end
else --失败
set @as_return ='0'
end
go
从来没用过 begin tran 和 commit tran 。呵呵,新鲜吗?我很难得见到阻塞的场面。