62,272
社区成员
发帖
与我相关
我的任务
分享
create procedure proc_Category_Delete(
@CODE varchar(50),
@CATEGORYCODE varchar(50)
)
as
set nocount on
begin transaction
if not exists(select ID from CategoryParentList where CODE = @CODE) and not exists ( select ID from CategoryList where P_CODE = @CODE )
begin
if(@CATEGORYCODE = 'ArticleInfo')
begin
delete from ArticleList where P_CODE = @CODE;
if(@@error<>0)
begin
rollback transaction;
select Result = -1;
return -1;
end
delete from CategoryList where CODE = @CODE and CATEGORYCODE = @CATEGORYCODE;
if(@@error<>0)
begin
rollback transaction;
select Result = -1;
return -1;
end
end
else if(@CATEGORYCODE = 'ProductInfo')
begin
delete from Product_AdditionalList where P_ID in (select ID from PorductList where CODE = @CODE);
if(@@error<>0)
begin
rollback transaction;
select Result = -1;
return -1;
end
delete from ProductList where P_CODE = @CODE;
if(@@error<>0)
begin
rollback transaction;
select Result = -1;
return -1;
end
delete from CategoryList where CODE = @CODE and CATEGORYCODE = @CATEGORYCODE;
if(@@error<>0)
begin
rollback transaction;
select Result = -1;
return -1;
end
end
else
begin
rollback transaction;
select Result = -1;
return -1;
end
select Result = 1;
commit transaction;
end
else
begin
select Result = -1;
rollback transaction
return -1;
end
return;
go