Nwlapcug.com


Come ottenere la sequenza successiva in DB2

Come ottenere la sequenza successiva in DB2


Una sequenza in DB2 è un insieme predefinito di numeri. DB2 può generare automaticamente un numero sequenziale per una colonna in un database che è definito come una colonna di "identità". Il valore iniziale, la dimensione della cache e l'incremento può essere specificati quando si definisce la colonna identity della tabella. Le colonne Identity sono solitamente definite come tipo di dati "BigInt", e il successivo valore generato automaticamente e inserito quando viene eseguita un'istruzione "INSERT". Una sequenza dà il programmatore più controllo creando un intervallo specifico di numeri per la sequenza.

Istruzioni

1

Aprire la finestra di comando DB2, digitare "DB2" e premere "Invio". Questo inizia il processore di riga di comando DB2 per il Client di DB2, dove è possibile immettere comandi DB2.

2

Connetti al database digitando "Connessione a myDB utente mionomeutente tramite MyPassword". Creare la sequenza digitando il comando "CREATE SEQUENCE" nella finestra di comando DB2. Fornire il valore iniziale, valore di incremento, valore massimo, valore minimo, ciclo, cache e ordine. Il comando dovrebbe essere simile a:

CREARE LA SEQUENZA MYSEQUENCE

INIZIARE CON 1

INCREMENTO DI 1

NESSUN MINVALUE

MAXVALUE 9999

CICLO

NESSUNA CACHE

ORDINE

3

Riferimento la sequenza in un'istruzione "INSERT" o "Aggiornare" utilizzando "Prossimo valore" o "precedente". Per inserire un nuovo record in una tabella denominata "cliente" e afferrare il numero successivo disponibile nella sequenza definita sopra per il valore di "customer_number", immettere "INSERT INTO clienti (customer_number, customer_name) valori (valore successivo per mySequence, 'Joe Smith')."

4

Utilizzare "Valore precedente" per accedere al numero di sequenza più recente generato. Questo comando può essere solo specificato se un'istruzione di "Valore successivo" è già stato emesso all'interno della transazione corrente o precedente. Per ottenere il valore precedente in un'istruzione "UPDATE", immettere "aggiornamento cliente SET customer_number = valore di precedente per mySequence dove customer_id = 10."

Consigli & Avvertenze

  • "Creare la sequenza" può anche essere emesso da un programma di applicazione; Tuttavia, è necessario disporre di autorità SYSADM o DBADM da eseguire.