Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Деактивирайте всички неклъстерирани индекси

Можете да изградите заявките в оператор за избиране, така:

DECLARE @sql AS VARCHAR(MAX)='';

SELECT @sql = @sql + 
'ALTER INDEX ' + sys.indexes.name + ' ON  ' + sys.objects.name + ' DISABLE;' +CHAR(13)+CHAR(10)
FROM 
    sys.indexes
JOIN 
    sys.objects 
    ON sys.indexes.object_id = sys.objects.object_id
WHERE sys.indexes.type_desc = 'NONCLUSTERED'
  AND sys.objects.type_desc = 'USER_TABLE';

EXEC(@sql);

Символи 13 и 10 са прехвърляне на ред/връщане на каретка, така че можете да проверите изхода, като замените EXEC с PRINT и ще бъде по-четим.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. OPENROWSET BULK Разрешения за споделена папка

  2. ORDER BY ... COLLATE в SQL Server

  3. 7645 Нулев или празен предикат на пълен текст

  4. Как да експортирате данни като CSV формат от SQL Server с помощта на sqlcmd?

  5. Как да отпечатате VARCHAR(MAX) с помощта на Print Statement?