Abilitare il livello di isolamento della transazione snapshot in SQL Server Analysis Services 2005

Questo articolo descrive i passaggi da seguire per abilitare il livello di isolamento della transazione snapshot in Analysis Services.

Versione originale del prodotto: SQL Server
Numero KB originale: 919160

Introduzione

Questo articolo descrive come abilitare il livello di isolamento della transazione snapshot in Microsoft SQL Server Analysis Services. Questo articolo descrive inoltre come verificare se il livello di isolamento della transazione snapshot è abilitato.

Abilitare il livello di isolamento della transazione snapshot

In Analysis Services è possibile usare il livello di isolamento della transazione snapshot per connettersi all'origine dati SQL Server. Per abilitare il livello di isolamento della transazione snapshot, seguire questa procedura:

  1. In SQL Server Management Studio eseguire le istruzioni seguenti.

    ALTER DATABASE <DatabaseName>
    SET READ_COMMITTED_SNAPSHOT ON
    GO
    ALTER DATABASE <DatabaseName>
    SET ALLOW_SNAPSHOT_ISOLATION ON
    GO
    

    Nota

    In queste istruzioni è <DatabaseName> un segnaposto per un database nell'origine dati che si vuole usare in Analysis Services.

  2. In Business Intelligence Development Studio creare un nuovo progetto di Analysis Services.

    In alternativa, aprire un progetto analysis services esistente.

  3. Se nel passaggio 2 è stato creato un nuovo progetto di Analysis Services, seguire questa procedura:

    1. In Esplora soluzioni fare clic con il pulsante destro del mouse su Origini dati e quindi scegliere Nuova origine dati.
    2. Nella finestra di dialogo Seleziona come definire la connessione fare clic su Nuovo. Verrà visualizzata la finestra di dialogo Gestione connessioni.

    Se nel passaggio 2 è stato aperto un progetto di Analysis Services esistente, seguire questa procedura:

    1. Nella cartella Origini dati fare doppio clic sull'origine dati esistente.
    2. Nella finestra di dialogo Origine dati Designer fare clic su Modifica. Verrà visualizzata la finestra di dialogo Gestione connessioni.
  4. Nella finestra di dialogo Gestione connessioni fare clic su NATIVE OLE DB\SQL Native Client nell'elenco Provider.

  5. Specificare il nome del server e l'autenticazione.

  6. Per testare la connessione, fare clic su Test connessione.

  7. Nel riquadro sinistro fare clic su Tutto.

  8. Nel riquadro destro fare clic su True nell'elenco Connessione MARS e quindi fare clic su OK.

  9. Nella finestra di dialogo Origine dati Designer fare clic su Snapshot nell'elenco Isolamento e quindi fare clic su OK.

Verificare se il livello di isolamento della transazione snapshot è abilitato

Per verificare se il livello di isolamento della transazione snapshot è abilitato, seguire questa procedura:

  1. Avviare SQL Server Profiler.

  2. Creare una nuova traccia per connettersi all'origine dati specificata nel progetto Analysis Services.

  3. Nella finestra di dialogo Proprietà traccia fare clic sulla scheda Selezione eventi .

  4. Nella colonna TransactionID fare clic per selezionare le caselle di controllo nella riga dell'evento SQL:BatchCompleted e nella riga dell'evento SQL:BatchStarting .

    Nota

    Per visualizzare la colonna TransactionID , fare clic per selezionare la casella di controllo Mostra tutte le colonne .

  5. Fare clic su Esegui per avviare la traccia.

  6. In Business Intelligence Development Studio elaborare il progetto Analysis Services.

  7. In SQL Server Profiler cercare gli SQL:BatchCompleted eventi e gli SQL:BatchStarting eventi con lo stesso valore nella colonna TransactionID. In genere, questi eventi contengono l'istruzione SELECT nella colonna TextData . Per questi eventi, ottenere l'ID sessione nella colonna SPID .

  8. Per connettersi all'origine dati, avviare SQL Server Management Studio.

  9. Creare una nuova query ed eseguire l'istruzione Transact-SQL seguente.

    select session_id,Transaction_Isolation_Level from sys.dm_exec_sessions
    where session_id=<SPID>
    

    Nota

    In questa istruzione SPID<> è un segnaposto per l'ID sessione ottenuto nel passaggio 7.

  10. Nella scheda Risultati prendere nota del valore nella colonna Transaction_Isolation_Level . Questo valore indica il livello di isolamento della transazione usato nel progetto Analysis Services. Quando il livello di isolamento della transazione snapshot è abilitato, il valore nella colonna Transaction_Isolation_Level è 5. Nella tabella seguente vengono illustrati i valori nella colonna Transaction_Isolation_Level e i livelli di isolamento delle transazioni corrispondenti.

    Valore Livello di isolamento delle transazioni
    0 Specificato
    1 ReadUncommitted
    2 Readcommitted
    3 Ripetibile
    4 Serializzabile
    5 Snapshot

Riferimenti

Per altre informazioni sul livello di isolamento delle transazioni snapshot, vedere gli argomenti seguenti nella documentazione online di SQL Server 2005:

  • SET TRANSACTION ISOLATION LEVEL (Transact-SQL)
  • Abilitazione dei livelli di isolamento basati sul controllo delle versioni delle righe
  • Livelli di isolamento nel motore di database