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

SQL Server 2008:Деактивирайте индекса на един конкретен дял на таблицата

Индексите обикновено са в схемата за разделяне. За сценария, за който говорите, можете действително да заредите нова таблица с пакета (идентична структура, различно име) и след това да използвате командата SWITCH, за да добавите тази таблица като нов дял към вашата съществуваща таблица.

Включих код, който използвам, за да изпълня това, ще трябва да го промените въз основа на имената на вашите таблици:

DECLARE @importPart int
DECLARE @hourlyPart int

SET @importPart = 2 -- always, so long as the Import table is only made up of 1 partition

-- get the Hourly partition
SELECT 
    @hourlyPart = MAX(V.boundary_id) + 1
FROM 
    sys.partition_range_values V
JOIN    sys.partition_functions F
    ON  V.function_id = F.function_id
    AND F.name = 'pfHourly'

ALTER TABLE Import
SWITCH PARTITION @importPart
TO Hourly PARTITION @hourlyPart;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да намерите най-лошо представящите се заявки в SQL Server 2008?

  2. След блокиране на една транзакция между версиите на SQL Server

  3. Стартирайте .sql файл от приложение в C#, като използвате SMO библиотека

  4. Мога ли да добавя дефинирана от потребителя функция на ниво сървър в SQL Server 2008 r2?

  5. Кой е най-добрият начин за внедряване на полиморфна асоциация в SQL Server?