Guest User

Untitled

a guest
Jan 13th, 2018
60
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.17 KB | None | 0 0
  1. SELECT *
  2. FROM
  3. (
  4. SELECT name,
  5. [Status] = CASE WHEN (@@OPTIONS & number) = 0 THEN 'OFF' ELSE 'ON' END
  6. FROM master.dbo.spt_values
  7. WHERE type='SOP'
  8. AND number > 0
  9. ) AS X
  10.  
  11. --------------------------------------------------
  12. -- server is SQLBOCSSLON1
  13.  
  14. -- this script creates an AD HOC job each step is a missing index in improving performance of
  15. --'spCustomerSearchBySurnameRaw'
  16. --'spCustomerSearchByFirstNameAndSurnameRaw'
  17.  
  18. -- this file will be located at:
  19. --B:Projects2015SQLBOCSSLON1SP TuningTESTspCustomerSearchBySurnameRaw20150529
  20.  
  21. --Marcelo Miorelli
  22. --29-May-2015
  23. --------------------------------------------------
  24.  
  25. USE [msdb]
  26. GO
  27.  
  28. BEGIN TRANSACTION
  29. DECLARE @ReturnCode INT
  30. SELECT @ReturnCode = 0
  31. IF NOT EXISTS (SELECT name FROM msdb.dbo.syscategories WHERE name=N'[Uncategorized (Local)]' AND category_class=1)
  32. BEGIN
  33. EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'[Uncategorized (Local)]'
  34. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  35.  
  36. END
  37.  
  38. DECLARE @jobId BINARY(16)
  39. EXEC @ReturnCode = msdb.dbo.sp_add_job @job_name=N'Ad Hoc - Create new Indexes - Bocss2',
  40. @enabled=1,
  41. @notify_level_eventlog=0,
  42. @notify_level_email=0,
  43. @notify_level_netsend=0,
  44. @notify_level_page=0,
  45. @delete_level=0,
  46. @description=N'No description available.',
  47. @category_name=N'[Uncategorized (Local)]',
  48. @owner_login_name=N'sa', @job_id = @jobId OUTPUT
  49. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  50. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBAddress_blnIsCurrent_strDeliveryPoint_INC_lngAddressID] Script Date: 29/05/2015 15:39:13 ******/
  51. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED INDEX [IDX_tblBAddress_blnIsCurrent_strDeliveryPoint_INC_lngAddressID]',
  52. @step_id=1,
  53. @cmdexec_success_code=0,
  54. @on_success_action=3,
  55. @on_success_step_id=0,
  56. @on_fail_action=2,
  57. @on_fail_step_id=0,
  58. @retry_attempts=0,
  59. @retry_interval=0,
  60. @os_run_priority=0, @subsystem=N'TSQL',
  61. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBAddress_blnIsCurrent_strDeliveryPoint_INC_lngAddressID]
  62. ON [dbo].[tblBAddress]
  63. ([blnIsCurrent], [strDeliveryPointSuffix], [strCountryCode], [strPostalCodeLookup])
  64. INCLUDE (lngAddressID) WITH (ONLINE = ON)',
  65. @database_name=N'Bocss2',
  66. @flags=20
  67. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  68. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBAddress_blnIsCurrent_INC_lngAddressID_strAccountCode] Script Date: 29/05/2015 15:39:13 ******/
  69. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED INDEX [IDX_tblBAddress_blnIsCurrent_INC_lngAddressID_strAccountCode]',
  70. @step_id=2,
  71. @cmdexec_success_code=0,
  72. @on_success_action=3,
  73. @on_success_step_id=0,
  74. @on_fail_action=2,
  75. @on_fail_step_id=0,
  76. @retry_attempts=0,
  77. @retry_interval=0,
  78. @os_run_priority=0, @subsystem=N'TSQL',
  79. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBAddress_blnIsCurrent_INC_lngAddressID_strAccountCode]
  80. ON [dbo].[tblBAddress] ([blnIsCurrent])
  81. INCLUDE (lngAddressID,strAccountCode) WITH (ONLINE = ON)',
  82. @database_name=N'Bocss2',
  83. @flags=20
  84. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  85. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBColdList_sintMarketID_strAddressLine3_INC_strAccountCode_strTitle_strFirstNames] Script Date: 29/05/2015 15:39:13 ******/
  86. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED [INDEX IDX_tblBColdList_sintMarketID_strAddressLine3_INC_strAccountCode_strTitle_strFirstNames]',
  87. @step_id=3,
  88. @cmdexec_success_code=0,
  89. @on_success_action=3,
  90. @on_success_step_id=0,
  91. @on_fail_action=2,
  92. @on_fail_step_id=0,
  93. @retry_attempts=0,
  94. @retry_interval=0,
  95. @os_run_priority=0, @subsystem=N'TSQL',
  96. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBColdList_sintMarketID_strAddressLine3_INC_strAccountCode_strTitle_strFirstNames]
  97. ON [dbo].[tblBColdList]
  98. ([sintMarketID], [strAddressLine3], [sdtmCopiedToAccount], [blnUsable], [strSurname], [strPostalCodeLookup])
  99. INCLUDE (strAccountCode,strTitle,strFirstNames) WITH (ONLINE = ON)
  100.  
  101. ',
  102. @database_name=N'Bocss2',
  103. @flags=20
  104. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  105. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBColdList_strFirstNames_blnUsablestrSurname_INC_strAccountCode_sintMarketID] Script Date: 29/05/2015 15:39:13 ******/
  106. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED INDEX [IDX_tblBColdList_strFirstNames_blnUsablestrSurname_INC_strAccountCode_sintMarketID]',
  107. @step_id=4,
  108. @cmdexec_success_code=0,
  109. @on_success_action=3,
  110. @on_success_step_id=0,
  111. @on_fail_action=2,
  112. @on_fail_step_id=0,
  113. @retry_attempts=0,
  114. @retry_interval=0,
  115. @os_run_priority=0, @subsystem=N'TSQL',
  116. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBColdList_strFirstNames_blnUsablestrSurname_INC_strAccountCode_sintMarketID]
  117. ON [dbo].[tblBColdList] ([strFirstNames], [blnUsable], [strSurname]) INCLUDE (strAccountCode,sintMarketID,strTitle,strAddressLine1,strAddressLine2,strAddressLine3,strAddressLine4,strAddressLine5,strAddressLine6,strPostalCode,strCountryCode,strEmail) WITH (ONLINE = ON)
  118. ',
  119. @database_name=N'Bocss2',
  120. @flags=20
  121. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  122. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBColdList_strFirstNames_blnUsable_INC_strAccountCode_sintMarketID] Script Date: 29/05/2015 15:39:13 ******/
  123. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED [INDEX IDX_tblBColdList_strFirstNames_blnUsable_INC_strAccountCode_sintMarketID]',
  124. @step_id=5,
  125. @cmdexec_success_code=0,
  126. @on_success_action=3,
  127. @on_success_step_id=0,
  128. @on_fail_action=2,
  129. @on_fail_step_id=0,
  130. @retry_attempts=0,
  131. @retry_interval=0,
  132. @os_run_priority=0, @subsystem=N'TSQL',
  133. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBColdList_strFirstNames_blnUsable_INC_strAccountCode_sintMarketID]
  134. ON [dbo].[tblBColdList] ([strFirstNames], [blnUsable]) INCLUDE (strAccountCode,sintMarketID,strTitle,strSurname,strAddressLine1,strAddressLine2,strAddressLine3,strAddressLine4,strAddressLine5,strAddressLine6,strPostalCode,strCountryCode,strEmail) WITH (ONLINE = ON)
  135. ',
  136. @database_name=N'Bocss2',
  137. @flags=20
  138. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  139. /****** Object: Step [CREATE NONCLUSTERED INDEX IDX_tblBColdList_strFirstNamesstrPostalCodeLookup_INC_strAccountCode] Script Date: 29/05/2015 15:39:13 ******/
  140. EXEC @ReturnCode = msdb.dbo.sp_add_jobstep @job_id=@jobId, @step_name=N'CREATE NONCLUSTERED INDEX [IDX_tblBColdList_strFirstNamesstrPostalCodeLookup_INC_strAccountCode]',
  141. @step_id=6,
  142. @cmdexec_success_code=0,
  143. @on_success_action=1,
  144. @on_success_step_id=0,
  145. @on_fail_action=2,
  146. @on_fail_step_id=0,
  147. @retry_attempts=0,
  148. @retry_interval=0,
  149. @os_run_priority=0, @subsystem=N'TSQL',
  150. @command=N'SET QUOTED_IDENTIFIER ON; CREATE NONCLUSTERED INDEX [IDX_tblBColdList_strFirstNamesstrPostalCodeLookup_INC_strAccountCode]
  151. ON [dbo].[tblBColdList] ([strFirstNames], [strPostalCodeLookup]) INCLUDE (strAccountCode) WITH (ONLINE = ON)
  152.  
  153. ',
  154. @database_name=N'Bocss2',
  155. @flags=20
  156. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  157. EXEC @ReturnCode = msdb.dbo.sp_update_job @job_id = @jobId, @start_step_id = 1
  158. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  159. EXEC @ReturnCode = msdb.dbo.sp_add_jobserver @job_id = @jobId, @server_name = N'(local)'
  160. IF (@@ERROR <> 0 OR @ReturnCode <> 0) GOTO QuitWithRollback
  161. COMMIT TRANSACTION
  162. GOTO EndSave
  163. QuitWithRollback:
  164. IF (@@TRANCOUNT > 0) ROLLBACK TRANSACTION
  165. EndSave:
  166.  
  167. GO
Add Comment
Please, Sign In to add comment