Una transazione, 10 .9 a c cessi a tabelle con istr uzioni sql – HEIDENHAIN TNC 320 (340 551-02) Manuale d'uso

Pagina 369

Advertising
background image

HEIDENHAIN TNC 320

369

1

0

.9 A

c

cessi a tabelle con istr

uzioni SQL

Una transazione

In linea di principio una transazione si compone delle azioni:

indirizzamento tabella (file), selezione righe e trasferimento nel
result-set

lettura righe dal result-set, modifica e/o aggiunta di nuove righe

chiusura della transazione. in caso di modifiche/integrazioni le righe
del result-set vengono trasferite nella tabella (file).

Sono tuttavia necessarie ulteriori azioni affinché le voci delle tabelle
possano essere elaborate nel programma NC e non sia possibile
modificare in parallelo le stesse righe delle tabelle. Ne risulta la
seguente procedura di transazione:

1

Per ogni colonna da elaborare viene specificato un parametro Q.
Il parametro Q viene assegnato alla colonna, viene "collegato" (SQL
BIND...

).

2

Indirizzamento della tabella (file), selezione di righe e trasferimento
nel result-set. Definizione inoltre delle colonne da trasferire nel
result-set (SQL SELECT...).

Le righe selezionate possono essere "bloccate". Altri processi
possono quindi accedere in lettura a tali righe, ma non possono
modificare le voci delle tabelle. Le righe selezionate devono essere
sempre bloccate se si apportano modifiche (SQL SELECT ... FOR
UPDATE

).

3

Lettura delle righe dal result-set, modifica e/o aggiunta di nuove
righe:
– acquisizione di una riga del result-set nei parametri Q del
programma NC (SQL FETCH...)
– predisposizione modifiche nei parametri Q e trasferimento in una
riga del result-set (SQL UPDATE...)
– predisposizione di una nuova riga di tabella nei parametri Q e
trasferimento come nuova riga nel result-set (SQL INSERT...)

4

Chiusura della transazione:
– Le registrazioni di tabella sono state modificate /completate: i dati
vengono acquisiti nella tabella (file) dal result-set. Sono ora
memorizzati nel file. Eventuali blocchi vengono eliminati, il result-
set viene abilitato (SQL COMMIT...)
– Le registrazioni di tabella non sono state modificate /completate
(solo accessi di vettura): eventuali blocchi vengono eliminati, il
result-set viene abilitato (SQL ROLLBACK... SENZA INDICE).

È possibile elaborare in parallelo diverse transazioni.

Concludere assolutamente una transazione iniziata anche
se si utilizzano esclusivamente accessi in lettura. Soltanto
in questo modo si assicura di non perdere modifiche/
integrazioni, i blocchi vengono eliminati e il result-set viene
abilitato.

Advertising