cs_guestbook_Post_Delete
ALTER PROCEDURE [dbo].cs_guestbook_Post_Delete
(
@SectionID int,
@PostID int
)
as
SET Transaction Isolation Level Read UNCOMMITTED
/**//*设置事务隔离级别,Read UNCOMMITTED 执行脏读或 0 级隔离锁定,这表示不发出共享锁,
也不接受排它锁。当设置该选项时,可以对数据执行未提交读或脏读;在事务结束前可以更
改数据内的数值,行也可以出现在数据集中或从数据集消失。该选项的作用与在事务内所有
语句中的所有表上设置 NOLOCK 相同。这是四个隔离级别中限制最小的级别。*/
Declare @ThreadID int
Select @ThreadID = ThreadID FROM cs_Posts where PostID = @PostID and SectionID = @SectionID
/**//*查询主题ID*/
if(@ThreadID is null) --- 如果为空,返回
RETURN
Delete FROM cs_Posts where PostID = @PostID and SectionID = @SectionID
/**//*从帖子表中删除记录*/
UPDATE
cs_Threads
SET
TotalReplies = (SELECT COUNT(*) FROM cs_Posts WHERE ThreadID = @ThreadID)
WHERE
ThreadID = @ThreadID
/**//*更新主题表中的信息*/
ALTER PROCEDURE [dbo].cs_guestbook_Post_Delete
(
@SectionID int,
@PostID int
)
as
SET Transaction Isolation Level Read UNCOMMITTED
/**//*设置事务隔离级别,Read UNCOMMITTED 执行脏读或 0 级隔离锁定,这表示不发出共享锁,
也不接受排它锁。当设置该选项时,可以对数据执行未提交读或脏读;在事务结束前可以更
改数据内的数值,行也可以出现在数据集中或从数据集消失。该选项的作用与在事务内所有
语句中的所有表上设置 NOLOCK 相同。这是四个隔离级别中限制最小的级别。*/
Declare @ThreadID int
Select @ThreadID = ThreadID FROM cs_Posts where PostID = @PostID and SectionID = @SectionID
/**//*查询主题ID*/
if(@ThreadID is null) --- 如果为空,返回
RETURN
Delete FROM cs_Posts where PostID = @PostID and SectionID = @SectionID
/**//*从帖子表中删除记录*/
UPDATE
cs_Threads
SET
TotalReplies = (SELECT COUNT(*) FROM cs_Posts WHERE ThreadID = @ThreadID)
WHERE
ThreadID = @ThreadID
/**//*更新主题表中的信息*/