Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Ogni cursore usa risorse temporanee per contenere i dati. Queste risorse possono essere di memoria, di un file di paging su disco, di file temporanei su disco o anche di archiviazione temporanea nel database. Il cursore viene chiamato cursore lato client quando queste risorse si trovano nel computer client. Il cursore viene chiamato cursore lato server quando queste risorse si trovano sul server.
Client-Side cursori
In ADO, chiamare un cursore lato client usando il adUseClient CursorLocationEnum. Con un cursore lato client non a set di chiavi, il server invia l'intero set di risultati attraverso la rete al computer client. Il computer client fornisce e gestisce le risorse temporanee necessarie per il cursore e il set di risultati. L'applicazione lato client può esplorare l'intero set di risultati per determinare le righe necessarie.
I cursori lato client statici e basati su keyset possono comportare un carico significativo sulla workstation se includono troppe righe. Anche se tutte le librerie di cursori sono in grado di creare cursori con migliaia di righe, le applicazioni progettate per recuperare set di righe di grandi dimensioni potrebbero avere prestazioni scarse. Naturalmente, ci sono eccezioni. Per alcune applicazioni, un cursore lato client di grandi dimensioni potrebbe essere perfettamente appropriato e le prestazioni potrebbero non essere un problema.
Un vantaggio evidente del cursore sul lato client è la risposta rapida. Dopo il download del set di risultati nel computer client, l'esplorazione delle righe è molto veloce. L'applicazione è in genere più scalabile con cursori lato client perché i requisiti delle risorse del cursore vengono inseriti in ogni client separato e non nel server.
Server-Side Cursori
In ADO, richiamare un cursore lato server utilizzando adUseServer CursorLocationEnum. Con un cursore lato server, il server gestisce il set di risultati utilizzando le risorse messe a disposizione dal server. Il cursore lato server restituisce solo i dati richiesti in rete. Questo tipo di cursore può talvolta offrire prestazioni migliori rispetto al cursore sul lato client, soprattutto in situazioni in cui il traffico di rete eccessivo è un problema.
Tuttavia, è importante sottolineare che un cursore lato server sta, almeno temporaneamente, consumando preziose risorse del server per ogni client attivo. È necessario pianificare di conseguenza per assicurarsi che l'hardware del server sia in grado di gestire tutti i cursori lato server richiesti dai client attivi. Inoltre, un cursore sul lato server può essere lento perché fornisce solo l'accesso a una singola riga. Non è disponibile alcun cursore batch.
I cursori lato server sono utili per l'inserimento, l'aggiornamento o l'eliminazione di record. Con i cursori lato server, è possibile avere più istruzioni attive nella stessa connessione.