Stored Procedure Properties
| Name | Value |
|---|---|
| Owner | dbo |
| Created | 2004-05-31 |
| Startup | False |
| Encrypted | False |
Creation Options
| Name | Value |
|---|---|
| QUOTED_IDENTIFIER | ON |
| ANSI_NULLS | ON |
Parameters
| Name | DataType | Length | Type |
|---|
Total: 0 parameter(s)
SQL
SET QUOTED_IDENTIFIER ON GO SET ANSI_NULLS ON GO CREATE procedure Maintenance_ResetForumGroupsForInsert AS BEGIN DECLARE @SortOrderCount int DECLARE @ForumGroupID int DECLARE @SortOrder int -- Set our seed value SET @SortOrderCount = 1 -- Use a temp table so we don't get duplicate values create table #SortForumGroups ( ForumGroupID int, SortOrder int ) -- Push data into temp table INSERT INTO #SortForumGroups SELECT ForumGroupID, SortOrder FROM ForumGroups ORDER BY sortorder -- Get the lowest value SELECT TOP 1 @SortOrder = SortOrder, @ForumGroupID = ForumGroupID FROM #SortForumGroups WHERE SortOrder >= 0 ORDER BY SortOrder WHILE @SortOrderCount < (SELECT count(*) FROM ForumGroups) BEGIN -- Update the forum groups table UPDATE ForumGroups SET SortOrder = @SortOrderCount WHERE ForumGroupID = @ForumGroupID -- increment our count SET @SortOrderCount = @SortOrderCount + 1 -- Get the next forumgroupid to modify SELECT TOP 1 @SortOrder = SortOrder, @ForumGroupID = ForumGroupID FROM #SortForumGroups WHERE SortOrder > @SortOrder ORDER BY SortOrder END END GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO