Condividi tramite


Procedura: ordinare dati in un indice cluster

Aggiornamento: novembre 2007

Quando si crea o si modifica un indice cluster in un database di Microsoft SQL Server, si imposta un'opzione che controlla quando i dati vengono ordinati nell'indice. È possibile ordinare i dati quando viene creato l'indice, ma anche ordinare e riorganizzare i dati quando la tabella risulta frammentata. Per informazioni sulle cause della frammentazione delle tabelle e le soluzioni consigliate, vedere l'argomento relativo a DBCC CHECKDB nella documentazione in linea di SQL Server.

L'opzione che consente di ordinare i dati quando viene creato l'indice è sempre la più veloce delle due, poiché non richiede la copia dei dati o la rigenerazione degli indici non cluster.

Nota:

Le finestre di dialogo e i comandi di menu visualizzati possono differire da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione in uso. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Impostazioni di Visual Studio.

Per ordinare i valori di indice

  1. In Esplora server fare clic con il pulsante destro del mouse sulla tabella con i valori di indice da ordinare, quindi scegliere Apri definizione tabella dal menu di scelta rapida.

  2. Scegliere Indici/chiavi dal menu di scelta rapida.

  3. Selezionare l'indice dall'elenco Indice selezionato.

  4. Verificare che l'opzione Crea come CLUSTERED sia selezionata.

  5. Se si utilizza SQL Server 6.5, verranno visualizzate le opzioni di ordinamento e sarà necessario selezionarne una tra quelle elencate nella tabella seguente:

    Opzione

    Azione

    Ordina dati

    Opzione predefinita. Ordina i dati quando viene creato l'indice.

    Dati già ordinati

    Elimina l'ordinamento eseguito al momento della creazione dell'indice cluster e verifica che i dati siano stati ordinati controllando ciascun valore di indice per determinare se è superiore al precedente. Se viene rilevato un errore durante il controllo di una delle righe, l'indice non potrà essere creato quando si tenterà di salvare la tabella.

    Quando i dati superano il controllo, l'opzione risulta più veloce dell'opzione Riorganizza dati ordinati poiché i dati non vengono copiati e gli indici non cluster non vengono generati nuovamente. Questa opzione si rivela particolarmente utile quando viene specificato un fattore di riempimento per comprimere o espandere le pagine in cui la tabella viene archiviata.

    Per ulteriori informazioni sui fattori di riempimento, vedere Procedura: specificare fattori di riempimento per gli indici.

    Riorganizza dati ordinati

    Opzione analoga a Dati già ordinati, con la differenza che è sempre più lenta poiché i dati vengono copiati e gli indici non cluster rigenerati. La riorganizzazione dei dati è utile quando una tabella diventa frammentata e si desidera riordinare i valori di indice.

    Nota:

    Dati già ordinati crea l'indice cluster con l'opzione SORTED_DATA. Riorganizza dati ordinati crea l'indice cluster con l'opzione SORTED_DATA_REORG. Se si seleziona una o l'altra opzione e il controllo rileva un errore in una qualsiasi delle righe, non potrà essere creato un indice quando si salva la tabella. In tal caso, è possibile correggere i dati o selezionare l'opzione Ordina dati.

  6. Infine fare clic su Chiudi.

Vedere anche

Riferimenti

Proprietà degli indici

Finestra di dialogo Indici/chiavi

Altre risorse

Operazioni con gli indici