Condividi tramite


Connessione di contesto

Si applica a:SQL Server

Il problema dell'accesso ai dati interni rappresenta uno scenario comune. Si tratta della situazione in cui si desidera accedere allo stesso server su cui viene eseguita la funzione o la stored procedure CLR (Common Language Runtime). Un'opzione consiste nel creare una connessione usando System.Data.SqlClient.SqlConnection, specificare una stringa di connessione che punta al server locale e aprire la connessione. Questo metodo richiede la specifica delle credenziali per l'accesso. La connessione si trova in una sessione di database diversa rispetto alla stored procedure o alla funzione, potrebbe avere diverse opzioni di SET, si trova in una transazione separata, non visualizza le tabelle temporanee e così via.

Se la stored procedure gestita o il codice della funzione viene eseguito nel processo di SQL Server, è perché un utente è connesso a tale server ed esegue un'istruzione SQL per richiamarla. È probabile che la stored procedure o la funzione vengano eseguite nel contesto di tale connessione, insieme alla relativa transazione, SET opzioni e così via. In questo caso si parla di connessione di contesto.

La connessione di contesto consente di eseguire istruzioni Transact-SQL nello stesso contesto nel quale è stato richiamato il codice. Per ottenere la connessione di contesto, è necessario usare la parola chiave della stringa di connessione "context connection", come nell'esempio seguente.

using(SqlConnection connection = new SqlConnection("context connection=true"))
{
    connection.Open();
    // Use the connection
}

In questa sezione

Articolo Descrizione
connessioni contesto e connessioni regolari Vengono descritte le differenze tra le connessioni normali e di contesto.
Restrizioni relative alle connessioni di contesto e alle connessioni regolari Vengono descritte le restrizioni relative alle connessioni normali e di contesto.