Condividi tramite


Funzione JetDupSession

Si applica a: Windows | Windows Server

Funzione JetDupSession

La funzione JetDupSession avvia una sessione e inizializza e restituisce un handle di sessione ESE (JET_SESID). Le sessioni controllano tutti gli accessi al database e vengono usate per controllare l'ambito delle transazioni. La sessione può essere usata per avviare, eseguire il commit o interrompere le transazioni. La sessione viene usata anche per collegare, creare o aprire un database. La sessione viene usata come contesto per tutte le operazioni DDL e DML. Per aumentare la concorrenza e l'accesso parallelo al database, è possibile avviare più sessioni.

Nota Questa API fungerà in tutti i modi come JetBeginSession chiamata sull'istanza della sessione passata. Questa funzione non è consigliata. JetBeginSession è preferibile.

    JET_ERR JET_API JetDupSession(
      __in          JET_SESID sesid,
      __out         JET_SESID* psesid
    );

Parametri

sesid

Sessione da utilizzare come origine per la duplicazione o l'inizio della sessione.

psesid

Puntatore alla variabile che la sessione gestisce inizializza in caso di esito positivo.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sui possibili errori ESE, vedere Errori del motore di archiviazione estendibile e parametri di gestione degli errori.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errClientRequestToStopJetService

Non è possibile completare l'operazione perché tutte le attività sull'istanza associata alla sessione sono cessate a seguito di una chiamata a JetStopService.

JET_errInstanceUnavailable

Non è possibile completare l'operazione perché l'istanza associata alla sessione ha rilevato un errore irreversibile che richiede la revoca dell'accesso a tutti i dati per proteggere l'integrità dei dati.

Questo errore verrà restituito solo da Windows XP e versioni successive.

JET_errInvalidParameter

Uno dei parametri forniti conteneva un valore imprevisto o conteneva un valore che non ha senso se combinato con il valore di un altro parametro.

JET_errNotInitialized

Non è possibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata.

JET_errOutOfMemory

L'operazione non è riuscita perché non è stato possibile allocare memoria.

JET_errOutOfSessions

Il numero di sessioni che il motore consentirà all'avvio del client è limitato. Questo valore può essere modificato usando JetSetSystemParameter con la costante JET_paramMaxSessions . Il numero predefinito di sessioni è 16. Per informazioni dettagliate sulle JET_paramMaxSessions, vedere Parametri di sistema.

JET_errRestoreInProgress

Non è possibile completare l'operazione perché è in corso un'operazione di ripristino nell'istanza associata alla sessione.

JET_errTermInProgress

Non è possibile completare l'operazione perché l'istanza associata alla sessione viene arrestata.

In caso di esito positivo, l'handle di sessione viene inizializzato e può essere usato per le operazioni del database.

In caso di errore, non sono disponibili sessioni o non è stato possibile inizializzare una nuova sessione.

Requisiti

Requisito Valore

Client

Richiede Windows Vista, Windows XP o Windows 2000 Professional.

Server

Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare ESENT.lib.

DLL

Richiede ESENT.dll.

Vedere anche

JET_SESID
JetBeginSession
JetSetSystemParameter
JetStopService
Parametri di sistema