INIZIA
Utilizzare il comando BEGIN per avviare un blocco di transazioni.
Utilizzare il comando BEGIN per avviare una transazione utente in modalità concatenata. Il sistema esegue tutti i comandi utente dopo il comando BEGIN in una singola transazione fino a quando non viene eseguito un commit esplicito, un rollback o un'interruzione dell'esecuzione. Il sistema esegue i comandi in modalità concatenata più rapidamente perché l'avvio/il commit delle transazioni richiede una notevole attività della CPU e del disco. La modalità concatenata consente la coerenza quando si eseguono più comandi all'interno di una transazione mentre si modificano diverse tabelle correlate.
Per impostazione predefinita, Netezza Performance Server SQL esegue le transazioni in modalità unchained (nota anche come autocommit). Il sistema esegue ogni istruzione dell'utente nella propria transazione ed esegue un commit implicito alla fine dell'istruzione (se l'esecuzione ha avuto successo, altrimenti il sistema esegue un rollback).
Se la transazione è impegnata, Netezza Performance Server SQL assicura che tutti gli aggiornamenti siano stati eseguiti o che non ne sia stato eseguito nessuno. Le transazioni hanno la proprietà standard ACID (atomica, coerente, isolabile e durevole).
Sintassi
BEGIN [ WORK | TRANSACTION ]Input
| Immissione | Descrizione |
|---|---|
| WORK | Queste parole chiave sono facoltative e non hanno alcun effetto. |
| Transazione |
Output
| Emissione | Descrizione |
|---|---|
| BEGIN | La nuova transazione è stata avviata. |
| NOTICE: BEGIN: already a transaction in progress | La transazione era già in corso. La transazione in corso non viene influenzata. |
Privilegi
Non sono necessari privilegi speciali per emettere il comando BEGIN.
Utilizzo
- Iniziare una transazione utente:
MYDB.SCH1(USER)=> BEGIN WORK;