Sql commit, Sql rollback – HEIDENHAIN TNC 620 (340 56x-03) Manuel d'utilisation

Page 277

Advertising
background image

HEIDENHAIN TNC 620

277

8.9 A

ccès aux tableaux a

v

e

c instr

u

ctions SQL

SQL COMMIT

SQL COMMIT

retransfère dans le tableau toutes les lignes présentes

dans Result-set. Un verrouillage mis avec SELCT...FOR UPDATE est
supprimé.

Le handle attribué lors de l'instruction SQL SELECT perd sa validité.

U

Nr. de paramètre pour résultat

: Paramètre Q dans

lequel le serveur SQL renvoie le résultat :
0 : aucune erreur constatée
1: erreur constatée (handle erroné ou entrées
identiques dans des colonnes dans lesquelles des
entrées claires sont exigées.)

U

Banque de données : réf. accès SQL

: Paramètre Q

avec le handle d'identification de Result-set (voir
également SQL SELECT).

SQL ROLLBACK

L'exécution de l'instruction SQL ROLLBACK dépend de la programmation
de l'INDICE :

„

INDICE

non programmé : Result-set ne sera pas retranscrit dans le

tableau (d'éventuelles modifications/données complétées seront
perdues). La transaction est fermée – Le handle attribué lors de
l'instruction SQL SELECT perd sa validité. Application classique : vous
fermez une transaction avec accès exclusivement à la lecture.

„

INDICE

programmé : la ligne avec indice demeure – Toutes les

autres lignes sont supprimées de Result-set. La transaction ne sera
pas fermée. Un verrouillage mis avec SELCT...FOR UPDATE reste mis
pour la ligne avec indice – Il est supprimé pour toutes les autres
lignes.

U

Nr. de paramètre pour résultat

: Paramètre Q dans

lequel le serveur SQL renvoie le résultat :
0 : aucune erreur constatée
1: erreur constatée (handle erroné)

U

Banque de données : réf. accès SQL

: Paramètre Q

avec le handle d'identification de Result-set (voir
également SQL SELECT).

U

Banque de données : indice résultat SQL

: ligne qui

doit demeurer dans Result-set. Inscrivez directement
le numéro de ligne ou bien programmez le paramètre
Q contenant l'indice.

Exemple :

11 SQL BIND Q881 "TAB_EXAMPLE.MESU_NO"

12 SQL BIND Q882 "TAB_EXAMPLE.MESU_X"

13 SQL BIND Q883 "TAB_EXAMPLE.MESU_Y"

14 SQL BIND Q884 "TAB_EXAMPLE.MESS_Z"

. . .

20 SQL Q5 "SELECT MESU_NO,MESU_X,MESU_Y,
MESU_Z FROM TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

40 SQL UPDATE Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL COMMIT Q1 HANDLE Q5

Exemple :

11 SQL BIND Q881 "TAB_EXAMPLE.MESU_NO"

12 SQL BIND Q882 "TAB_EXAMPLE.MESU_X"

13 SQL BIND Q883 "TAB_EXAMPLE.MESU_Y"

14 SQL BIND Q884 "TAB_EXAMPLE.MESS_Z"

. . .

20 SQL Q5 "SELECT MESU_NO,MESU_X,MESU_Y,
MESU_Z FROM TAB_EXAMPLE"

. . .

30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2

. . .

50 SQL ROLLBACK Q1 HANDLE Q5

Advertising