sql server 存储过程事务处理实现批量删除
来源:互联网 发布:淘宝一折特卖 - 百度 编辑:程序博客网 时间:2024/04/30 20:38
roleidstr使用逗号隔开的字符串如“001.,002,003,004,005”
create procedure DeleteRoles
(
@roleidstr nvarchar(500)
)
AS
BEGIN
set nocount on
set xact_abort on
begin tran
DECLARE @role_id varchar(10)
DECLARE @i INT
DECLARE @len INT
IF (@roleidstr IS NULL) OR (LTRIM(@roleidstr) = '')
RETURN
WHILE CHARINDEX(',',@roleidstr) > 0
BEGIN
SET @len = LEN(@roleidstr)
SET @i = CHARINDEX(',', @roleidstr)
SET @role_id = LEFT(@roleidstr, @i-1)
Delete from t_RoleAuthority where RoleID=@role_id--少做修改,改成需要的sql语句即可
if(@@error<>0) begin
rollback tran
return -1 end
else delete from t_Role where RoleID=@role_id
if(@@error<>0) begin
rollback tran
return -1 end
SET @roleidstr = RIGHT(@roleidstr, @len - @i)
END
commit tran
END
GO
create proc roleDelete(@roleid varchar(10))
as
begin
set nocount on
set xact_abort on
begin tran
delete from t_RoleAuthority where RoleID=@roleid
if(@@error<>0) begin
rollback tran
return -1 end
else delete from t_Role where RoleID=@roleid
if(@@error<>0) begin
rollback tran
return -1 end
commit tran
end
- sql server 存储过程事务处理实现批量删除
- sql server 存储过程事务处理
- SQL Server通过储存过程实现批量删除注意事项
- 在存储过程中使用事务处理 sql server 删除多表操作一致性的问题
- SQL Server存储过程中编写事务处理的方法小结
- sql 存储过程 与 事务处理
- SQL Server联机丛书:删除存储过程
- SQL Server联机丛书:删除存储过程
- SQL Server联机丛书:删除存储过程
- SQL Server 删除所有存储过程
- Repeater获取勾选数据,拼接成SQL实现批量删除+存储过程
- SQL 函数、存储过程、触发器、级联删除、数据批量导入
- SQL SERVER存储过程批量插入数据库表数据
- SQL SERVER存储过程批量插入数据库表数据
- sql server 批量修改表和存储过程的所有者
- SQL SERVER存储过程批量插入数据库表数据
- 批量修改 SQL Server 表、存储过程的所有者
- SQL SERVER 2005存储过程利用xml批量插入
- The Barb Tarbox Story
- 最初的记忆
- 為Cisco IP電話設置Idle URL
- 重载(overload)、覆盖(override)、隐藏(hide)的区别
- 你的成功在于你每天养成的习惯(转)
- sql server 存储过程事务处理实现批量删除
- IE6 z-index的bug
- NetBeans Weekly News - Issue # 446 - Jul 20, 2010
- HDU 3458 Rectangles Too!
- 关于Hibernate的一点东西
- 苹果真的很厉害!
- vim中使用gdb, pyclewn
- 如何进行网站优化(转)
- Hive-0.5中SerDe概述