Condividi tramite


Funzione JetBeginTransaction3

Si applica a: Windows | Windows Server

La funzione JetBeginTransaction3 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.

La funzione JetBeginTransaction3 è stata introdotta nel sistema operativo Windows 8.

JET_ERR JET_API JetBeginTransaction3(
  __in          JET_SESID sesid,
  __in          int64 trxid,
  __in          JET_GRBIT grbit
);

Parametri

sesid

Sessione da utilizzare per questa chiamata.

trxid

Identificatore facoltativo fornito dall'utente per identificare la transazione.

grbit

Gruppo di bit che specifica zero o più valori dell'opzione di chiamata elencati nella tabella seguente.

Valore

Significato

JET_bitTransactionReadOnly

La transazione non modificherà il database. Se si tenta un aggiornamento, l'operazione avrà esito negativo con JET_errTransReadOnly codice di risposta. Questa opzione viene ignorata a meno che non venga richiesta quando la sessione specificata non è già in una transazione. Questa opzione è disponibile nelle versioni del sistema operativo Windows a partire da Windows XP.

Valore restituito

Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti elencati nella tabella seguente. Per altre informazioni sui possibili errori di Extensible Archiviazione Engine (E edizione Standard), vedere Extensible Archiviazione Engine Errors and Error Handling Parameters .For more information about the possible Extensible Archiviazione Engine (E edizione Standard) errors, see Extensible Archiviazione Engine Errors and Error Handling Parameters.

Codice restituito

Descrizione

JET_errSuccess

Operazione riuscita.

JET_errClientRequestToStopJetService

Non è possibile completare l'operazione perché tutte le attività nell'istanza associata alla sessione non sono più state completate in seguito a una chiamata alla funzione 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 codice restituito viene restituito dalle versioni di Windows a partire da Windows XP.

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 viene restituito dalle versioni di Windows a partire da Windows XP.

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 consentita dal motore di database.

In caso di esito positivo, la sessione specificata si troverà all'interno di una transazione. Se la sessione era 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.

Osservazioni:

Per altre informazioni sul funzionamento delle transazioni, vedere JetBeginTransaction.

Requisiti

Requisito Valore

Client

Richiede Windows 8.

Server

Richiede Windows Server 2012.

Intestazione

Dichiarato in Esent.h.

Libreria

Usare E edizione Standard NT.lib.

DLL

Richiede E edizione Standard NT.dll.

Vedi anche

JET_ERR
JET_GRBIT
JET_SESID
JetBeginTransaction
JetCommitTransaction
JetGetSystemParameter
JetResetSessionContext
JetRollback
JetSetSessionContext
Parametri di sistema