Condividi tramite


Annullamento di comandi (XMLA)

A seconda delle autorizzazioni amministrative dell'utente che invia il comando, il comando Cancel in XML for Analysis (XMLA) può annullare un comando in una sessione, una sessione, una connessione, un processo del server oppure una sessione o una connessione associata.

Annullamento di comandi

Un utente può annullare il comando attualmente in esecuzione nel contesto della sessione corrente esplicita inviando un comando Cancel senza proprietà specificate.

[!NOTA]

Un comando in esecuzione in una sessione implicita non può essere annullato da un utente.

Annullamento di comandi batch

Se un utente annulla un comando Batch, tutti i comandi rimanenti non ancora eseguiti nel comando Batch vengono annullati. Se il comando Batch è transazionale, di tutti i comandi eseguiti prima del comando Cancel viene eseguito il rollback.

Annullamento di sessioni

Specificando un identificatore di sessione per una sessione esplicita nella proprietà SessionID del comando Cancel, un amministratore di database o del server può annullare una sessione, incluso il comando attualmente in esecuzione. Un amministratore di database può annullare solo sessioni per i database per i quali dispone delle autorizzazioni amministrative.

Un amministratore di database può recuperare le sessioni attive per un database specifico recuperando il set di righe dello schema DISCOVER_SESSIONS. Per recuperare il set di righe dello schema DISCOVER_SESSIONS, l'amministratore di database utilizza il metodo Discover XMLA e specifica l'identificatore di database appropriato per la colonna di restrizione SESSION_CURRENT_DATABASE nella proprietà Restrictions del metodo Discover.

Annullamento di connessioni

Specificando un identificatore di connessione nella proprietà ConnectionID del comando Cancel, un amministratore del server può annullare tutte le sessioni associate a una connessione specifica, inclusi tutti i comandi in esecuzione, e annullare la connessione.

[!NOTA]

Se l'istanza di MicrosoftSQL ServerAnalysis Services non è in grado di individuare e annullare le sessioni associate a una connessione, ad esempio quando il data pump apre più sessioni fornendo contemporaneamente connettività HTTP, l'istanza non può annullare la connessione. Se questa situazione si verifica durante l'esecuzione di un comando Cancel, si verifica un errore.

Un amministratore del server può recuperare le connessioni attive per un'istanza di Analysis Services recuperando il set di righe dello schema DISCOVER_CONNECTIONS tramite il metodo Discover XMLA.

Annullamento di processi del server

Specificando un identificatore del processo del server (SPID) nella proprietà SPID del comando Cancel, un amministratore del server può annullare i comandi associati a un valore SPID specificato.

Annullamento di sessioni e connessioni associate

È possibile impostare la proprietà CancelAssociated su true per annullare le connessioni, le sessioni e comandi associati con la connessione, la sessione o il valore SPID specificato nel comando Cancel.