Snippet Name: Rename_Operations_with_IF_EXISTS
Tags:
Created Date: 2025-06-16 13:12:44
Last Modified Date: 2025-05-31 10:31:35
Dependencies:
DBA Notes:
Sample Output:
Title: Rename Operations with IF EXISTS
Author: user
for the following sp_rename operations for SQL server 2019, please modify each line item to have an IF EXISTS test: EXECUTE sp_rename '[dbo].[tblInstanceActivities].PK_tblInstanceActivities','PK_tblInstanceActivitiesOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfId','IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfIdOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeId','IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeIdOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCode','IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCodeOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCode','IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCodeOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActId','IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActIdOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuid','IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuidOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlag','IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlagOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlag','IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlagOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldSourceActId','IX_tblInstanceActivities_fldSourceActIdOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuid','IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuidOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_fldId','IX_tblInstanceActivities_fldTemplateActivityGuid_fldIdOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_Includes','IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_IncludesOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldInstanceWfId_Includes','IX_tblInstanceActivities_fldInstanceWfId_IncludesOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_Filtered','IX_tblInstanceActivities_fldTemplateActivityGuid_FilteredOrig','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivities].IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldId','IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldIdOrig','INDEX' ;
Author: ChatGPT
To modify each `sp_rename` operation to include an `IF EXISTS` check, you can use a combination of dynamic SQL and the `OBJECT_ID` function. The following script does this for each rename operation:
```sql
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'PK_tblInstanceActivities')
EXEC sp_rename N'[dbo].[tblInstanceActivities].PK_tblInstanceActivities', N'PK_tblInstanceActivitiesOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfId', N'IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfIdOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeId', N'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeIdOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCode')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCode', N'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCodeOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCode')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCode', N'IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCodeOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActId', N'IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActIdOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuid')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuid', N'IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuidOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlag')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlag', N'IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlagOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlag')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlag', N'IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlagOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldSourceActId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldSourceActId', N'IX_tblInstanceActivities_fldSourceActIdOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuid')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuid', N'IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuidOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_fldId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_fldId', N'IX_tblInstanceActivities_fldTemplateActivityGuid_fldIdOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_Includes')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_Includes', N'IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_IncludesOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldInstanceWfId_Includes')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldInstanceWfId_Includes', N'IX_tblInstanceActivities_fldInstanceWfId_IncludesOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_Filtered')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_tblInstanceActivities_fldTemplateActivityGuid_Filtered', N'IX_tblInstanceActivities_fldTemplateActivityGuid_FilteredOrig', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivities]') AND name = 'IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldId')
EXEC sp_rename N'[dbo].[tblInstanceActivities].IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldId', N'IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldIdOrig', N'INDEX';
```
This script checks if each index exists before attempting to rename it, ensuring that the rename operations only occur if the specified index is present.
Author: user
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInternalIdTemp','IX_tblInstanceActivities_fldInternalId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].PK_tblInstanceActivitiesTemp','PK_tblInstanceActivities','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfIdTemp','IX_tblInstanceActivities_fldEmployeeId_fldId_fldlateActivityGuid_fldInstanceWfId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeIdTemp','IX_tblInstanceActivities_fldId_fldlateActivityGuid_fldEmployeeId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCodeTemp','IX_tblInstanceActivities_fldId_fldlateActivityGuid_fldInstanceWfId_fldEmployeeCode','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCodeTemp','IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCode','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActIdTemp','IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuidTemp','IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldlateActivityGuid','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlagTemp','IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldlateActivityGuid_fldRedirectFlag','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlagTemp','IX_tblInstanceActivities_fldlateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlag','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldSourceActIdTemp','IX_tblInstanceActivities_fldSourceActId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuidTemp','IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldlateActivityGuid','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_fldIdTemp','IX_tblInstanceActivities_fldlateActivityGuid_fldId','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_IncludesTemp','IX_tblInstanceActivities_fldCompletionDate_fldlateActivityGuid_Includes','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInstanceWfId_IncludesTemp','IX_tblInstanceActivities_fldInstanceWfId_Includes','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_FilteredTemp','IX_tblInstanceActivities_fldlateActivityGuid_Filtered','INDEX' ;
EXECUTE sp_rename '[dbo].[tblInstanceActivitiesTemp].IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldIdTemp','IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldlateActivityGuid_INCLUDE_fldId','INDEX' ;
Author: ChatGPT
To include an `IF EXISTS` check for these rename operations, you can use the following script:
```sql
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldInternalIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInternalIdTemp', N'IX_tblInstanceActivities_fldInternalId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'PK_tblInstanceActivitiesTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].PK_tblInstanceActivitiesTemp', N'PK_tblInstanceActivities', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldEmployeeId_fldId_fldTemplateActivityGuid_fldInstanceWfIdTemp', N'IX_tblInstanceActivities_fldEmployeeId_fldId_fldlateActivityGuid_fldInstanceWfId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldEmployeeIdTemp', N'IX_tblInstanceActivities_fldId_fldlateActivityGuid_fldEmployeeId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCodeTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldId_fldTemplateActivityGuid_fldInstanceWfId_fldEmployeeCodeTemp', N'IX_tblInstanceActivities_fldId_fldlateActivityGuid_fldInstanceWfId_fldEmployeeCode', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCodeTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCodeTemp', N'IX_tblInstanceActivities_fldInstanceWfId_fldId_fldEmployeeCode', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActIdTemp', N'IX_tblInstanceActivities_fldResult_fldCompletionDate_fldInstanceWfId_fldId_fldSourceActId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuidTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldTemplateActivityGuidTemp', N'IX_tblInstanceActivities_fldRedirectFlag_fldStatus_fldInstanceWfId_fldlateActivityGuid', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlagTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldTemplateActivityGuid_fldRedirectFlagTemp', N'IX_tblInstanceActivities_fldStatus_fldInstanceWfId_fldlateActivityGuid_fldRedirectFlag', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlagTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlagTemp', N'IX_tblInstanceActivities_fldlateActivityGuid_fldStatus_fldInstanceWfId_fldRedirectFlag', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldSourceActIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldSourceActIdTemp', N'IX_tblInstanceActivities_fldSourceActId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuidTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldTemplateActivityGuidTemp', N'IX_tblInstanceActivities_fldCompletionDate_fldId_fldEmployeeCode_fldlateActivityGuid', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_fldIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_fldIdTemp', N'IX_tblInstanceActivities_fldlateActivityGuid_fldId', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_IncludesTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldCompletionDate_fldTemplateActivityGuid_IncludesTemp', N'IX_tblInstanceActivities_fldCompletionDate_fldlateActivityGuid_Includes', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldInstanceWfId_IncludesTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldInstanceWfId_IncludesTemp', N'IX_tblInstanceActivities_fldInstanceWfId_Includes', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_tblInstanceActivities_fldTemplateActivityGuid_FilteredTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_tblInstanceActivities_fldTemplateActivityGuid_FilteredTemp', N'IX_tblInstanceActivities_fldlateActivityGuid_Filtered', N'INDEX';
IF EXISTS (SELECT 1 FROM sys.indexes WHERE object_id = OBJECT_ID('[dbo].[tblInstanceActivitiesTemp]') AND name = 'IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldIdTemp')
EXEC sp_rename N'[dbo].[tblInstanceActivitiesTemp].IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldTemplateActivityGuid_INCLUDE_fldIdTemp', N'IX_LI_tblInstanceActivitiesfldInstanceWfId_fldCompletionDate_fldlateActivityGuid_INCLUDE_fldId', N'INDEX';
```
This script checks if each index exists in the temporary table `[tblInstanceActivitiesTemp]` before attempting to rename it, ensuring that the rename operations only occur if the specified index is present.
Author: user
and also this rename table operations, but also make sure the target table does nto exist: EXECUTE sp_rename 'tblInstanceActivities','tblInstanceActivitiesOrig';
EXECUTE sp_rename 'tblInstanceActivitiesTemp','tblInstanceActivities';
Author: ChatGPT
To include `IF EXISTS` checks for renaming tables, and ensuring that the target table does not already exist, you can use the following script:
```sql
-- Check if 'tblInstanceActivities' exists and 'tblInstanceActivitiesOrig' does not exist before renaming
IF EXISTS (SELECT 1 FROM sys.tables WHERE name = 'tblInstanceActivities' AND schema_id = SCHEMA_ID('dbo'))
AND NOT EXISTS (SELECT 1 FROM sys.tables WHERE name = 'tblInstanceActivitiesOrig' AND schema_id = SCHEMA_ID('dbo'))
BEGIN
EXEC sp_rename 'dbo.tblInstanceActivities', 'tblInstanceActivitiesOrig';
END
-- Check if 'tblInstanceActivitiesTemp' exists and 'tblInstanceActivities' does not exist before renaming
IF EXISTS (SELECT 1 FROM sys.tables WHERE name = 'tblInstanceActivitiesTemp' AND schema_id = SCHEMA_ID('dbo'))
AND NOT EXISTS (SELECT 1 FROM sys.tables WHERE name = 'tblInstanceActivities' AND schema_id = SCHEMA_ID('dbo'))
BEGIN
EXEC sp_rename 'dbo.tblInstanceActivitiesTemp', 'tblInstanceActivities';
END
```
This script performs the following checks before executing each `sp_rename`:
1. It checks if the source table exists in the `dbo` schema.
2. It checks if the target table does not already exist in the `dbo` schema.
If both conditions are met, the `sp_rename` operation is executed.