Risposte:
La connessione è il canale di comunicazione fisico tra SQL Server e l'applicazione: il socket TCP, la pipe denominata, l'area di memoria condivisa. La sessione in SQL Server corrisponde alla definizione di sessione di Wikipedia : un contenitore di stato semi-permanente per uno scambio di informazioni. In altre parole, le sessioni memorizzano impostazioni come cache delle informazioni di accesso, livello di isolamento della transazione corrente, valori a livello di sessioneSET ecc. Ecc.
Normalmente esiste una sessione su ogni connessione, ma potrebbero esserci più sessioni su una singola connessione ( Multiple Active Result Set , MARS) e ci sono sessioni che non hanno connessione ( procedure attivate da SSB , sessioni di sistema ). Esistono anche connessioni senza sessioni, in particolare connessioni utilizzate per scopi non TDS, come il mirroring del database sys.dm_db_mirroring_connectionso le connessioni di Service Broker sys.dm_broker_connections.
È possibile eseguire una query sulle viste di gestione dinamica sys.dm_exec_sessions per ottenere informazioni sugli accessi riusciti e non riusciti quando è abilitata la conformità ai criteri comuni su un'istanza di SQL Server 2012.
La vista di gestione dinamica sys.dm_exec_connections fornisce informazioni sulle connessioni stabilite all'istanza del Motore di database. Non è possibile eseguire query su questa vista di gestione dinamica per informazioni sugli accessi riusciti e non riusciti quando è abilitata la conformità ai criteri comuni su un'istanza di SQL Server 2012.
#temptabelle non possono essere eliminate o selezionate in diverse schede di file aperte perché sono nell'ambito della sessione.