Esecuzione di operazioni in linea su indici
In SQL Server 2005 è possibile creare, ricostruire o eliminare indici in linea. L'opzione ONLINE consente l'accesso simultaneo degli utenti alla tabella sottostante o ai dati dell'indice cluster e a qualsiasi indice non cluster associato durante l'esecuzione di queste operazioni sugli indici. Durante la ricostruzione di un indice cluster da parte di un utente, ad esempio, tale utente e altri utenti possono continuare ad aggiornare ed eseguire query sui dati sottostanti. Quando si eseguono operazioni DDL non in linea, ad esempio la costruzione o la ricostruzione di un indice cluster, tali operazioni mantengono blocchi esclusivi sui dati sottostanti e gli indici associati. Questo comportamento impedisce modifiche e query nei dati sottostanti fino al termine dell'operazione sull'indice.
[!NOTA] Le operazioni sugli indici in linea sono disponibili solo in SQL Server 2005 Enterprise Edition.
È consigliabile eseguire operazioni in linea sugli indici per ambiti aziendali in funzione 24 ore al giorno e sette giorni su sette, in cui l'esigenza di attività simultanee durante le operazioni sugli indici rappresenta un elemento essenziale.
L'opzione ONLINE è disponibile nelle istruzioni Transact-SQL seguenti.
- CREATE INDEX
- ALTER INDEX
- DROP INDEX
- ALTER TABLE (per aggiungere o eliminare vincoli UNIQUE o PRIMARY KEY con l'opzione di indice CLUSTERED)
Per ulteriori informazioni sulle operazioni in linea sugli indici, vedere Funzionamento delle operazioni sugli indici in linea e Linee guida per l'esecuzione di operazioni sugli indici in linea.
Esempio
Nell'esempio seguente vengono ricostruiti in linea tutti gli indici inclusi nella tabella Product
del database di esempio AdventureWorks
.
USE AdventureWorks;
GO
ALTER INDEX ALL ON Production.Product
REBUILD WITH (ONLINE = ON);
Vedere anche
Concetti
Disattivazione di indici
Riorganizzazione e ricostruzione degli indici
Utilizzo dei blocchi in Motore di database
Informazioni sui livelli di isolamento basati sul controllo delle versioni delle righe
Altre risorse
ALTER INDEX (Transact-SQL)
ALTER TABLE (Transact-SQL)
CREATE INDEX (Transact-SQL)