Funzione JetBeginTransaction2
Si applica a: Windows | Windows Server
Funzione JetBeginTransaction2
La funzione JetBeginTransaction2 fa sì che una sessione immetta una transazione e crei un nuovo punto di salvataggio. Questa funzione può essere chiamata più volte in una singola sessione per creare punti di salvataggio aggiuntivi. Questi punti di salvataggio possono essere usati per mantenere o eliminare in modo selettivo le modifiche apportate al database.
JET_ERR JET_API JetBeginTransaction2(
__in JET_SESID sesid,
__in JET_GRBIT grbit
);
Parametri
sesid
Sessione da utilizzare per questa chiamata.
grbit
Gruppo di bit che contengono le opzioni da usare per questa chiamata, che includono zero o più dei seguenti elementi.
Valore |
Significato |
---|---|
JET_bitTransactionReadOnly |
La transazione non modificherà il database. Se si tenta un aggiornamento, l'operazione avrà esito negativo con JET_errTransReadOnly. Questa opzione viene ignorata a meno che non venga richiesta quando la sessione specificata non è già in una transazione. Questa opzione è disponibile solo a partire da Windows XP. |
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_errNotInitialized |
Non è possibile completare l'operazione perché l'istanza associata alla sessione non è ancora stata inizializzata. |
JET_errRestoreInProgress |
Non è possibile completare l'operazione perché è in corso un'operazione di ripristino nell'istanza associata alla sessione. |
JET_errSessionSharingViolation |
La stessa sessione non può essere usata contemporaneamente per più thread. Questo errore verrà restituito solo da Windows XP e versioni successive. |
JET_errTermInProgress |
Non è possibile completare l'operazione perché l'istanza associata alla sessione viene arrestata. |
JET_errTransTooDeep |
Impossibile avviare una nuova transazione perché la sessione è già alla profondità massima del punto di salvataggio consentita dal motore di database. |
In caso di esito positivo, la sessione specificata si troverà all'interno di una transazione. Se la sessione si trovava in precedenza all'interno di una transazione, verrà creato un nuovo punto di salvataggio.
In caso di errore, lo stato transazionale della sessione rimarrà invariato. Non verrà apportata alcuna modifica allo stato del database.
Commenti
Per altre informazioni sul funzionamento delle transazioni, vedere JetBeginTransaction.
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_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
Parametri di sistema