SQL Server数据库,表 QuestionKinds有如下字段:
KindID      自增量 
KindName 
KindOrder    问题种类显示的顺序号

浏览数据时,使用删除一行记录时修改相关字段数值删除一行记录时修改相关字段数值删除一行记录时修改相关字段数值删除一行记录时修改相关字段数值,上下移动数据,修改,删除。

删除一行记录的存储过程如下:

CREATE PROCEDURE Pr_DeleteQuestionKind
(
@KindID int
)
AS
DELETE
QuestionKinds

WHERE
KindID = @KindID
GO

因测试中发现,删除记录后,KindOrder的数值之间 出现不连续现象,导致 删除一行记录时修改相关字段数值删除一行记录时修改相关字段数值上下移动按钮运行时,页面出现不移动现象。实际上,数据是移动的。不过,移动的量是 -1  +1.为改正此错误,现修改删除一行记录的存储过程如下:

--2007-06-12  d修改 使  删除类别的时候,kindorder也跟着修改。既删除时,使所有比该KindOrder数值大的KindOrder都-1。

CREATE PROCEDURE Pr_DeleteQuestionKind
(
@KindID int
)
AS

DECLARE @UpdateOrder int

SET  @UpdateOrder =
(
SELECT
KindOrder
       
FROM
QuestionKinds
       
WHERE
KindID = @KindID
)

UPDATE
QuestionKinds
        
SET
KindOrder =KindOrder-1
where KindOrder>@UpdateOrder

DELETE
QuestionKinds

WHERE
KindID = @KindID
GO

相关文章:

  • 2021-11-30
  • 2021-11-20
  • 2021-07-28
  • 2021-09-07
  • 2021-07-30
  • 2021-11-28
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-18
  • 2022-02-01
  • 2021-12-08
  • 2021-11-20
相关资源
相似解决方案