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

Sintassi per avviare un blocco di transazioni:
BEGIN [ WORK | TRANSACTION ]

Input

Il comando BEGIN riceve i seguenti input:
Tabella 1. INIZIO ingressi
Immissione Descrizione
WORK Queste parole chiave sono facoltative e non hanno alcun effetto.
Transazione

Output

Il comando BEGIN ha le seguenti uscite:
Tabella 2. INIZIO uscite
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

Di seguito sono riportati alcuni esempi di utilizzo:
  • Iniziare una transazione utente:
    MYDB.SCH1(USER)=> BEGIN WORK;