SQL COMMIT
SQL COMMIT brengt alle in de result-set aanwezige regels terug naar de
tabel. Een met SELCT...FOR UPDATE ingestelde blokkering wordt
gereset.
De bij de opdracht SQL SELECT toegekende handle is niet langer geldig.
Parameternr. voor resultaat: Q-parameter waarin
de SQL-server het resultaat terugmeldt.
0: geen fout opgetreden
1: fout opgetreden (verkeerde handle of dezelfde
gegevens ingevoerd in kolommen waarin unieke
gegevens moeten worden ingevoerd)
Database: ID SQL-toegang: Q-parameter met de
handle voor identificatie van de result-set (zie ook SQL
SELECT).
SQL ROLLBACK
De uitvoering van SQL ROLLBACK hangt ervan af of INDEX is
geprogrammeerd:
INDEX niet geprogrammeerd: de result-set wordt niet naar de tabel
teruggeschreven (eventuele wijzigingen/aanvullingen gaan
verloren). De transactie wordt afgesloten - de bij SQL SELECT
toegekende handle is niet langer geldig. Typische toepassing: u
beëindigt een transactie met uitsluitend leestoegang.
INDEX geprogrammeerd: de geïndexeerde regel blijft bestaan - alle
andere regels worden uit de result-set verwijderd. De transactie
wordt niet afgesloten. Een met SELCT...FOR UPDATE ingestelde
blokkering blijft voor de geïndexeerde regel bestaan - voor alle
andere regels wordt ze gereset.
Parameternr. voor resultaat: Q-parameter waarin
de SQL-server het resultaat terugmeldt.
0: geen fout opgetreden
1: fout opgetreden (verkeerde handle)
Database: ID SQL-toegang: Q-parameter met de
handle voor identificatie van de result-set (zie ook SQL
SELECT).
Database: index voor SQL-resultaat: regel die in de
result-set moet blijven staan. Het regelnummer wordt
direct opgegeven of u programmeert de Q-parameter
die de index bevat.
HEIDENHAIN TNC 620
Voorbeeld:
11 SQL BIND Q881 "TAB_EXAMPLE.MESS_NR"
12 SQL BIND Q882 "TAB_EXAMPLE.MESS_X"
13 SQL BIND Q883 "TAB_EXAMPLE.MESS_Y"
14 SQL BIND Q884 "TAB_EXAMPLE.MESS_Z"
. . .
20 SQL Q5 "SELECT MESS_NR,MESS_X,MESS_Y,
MESS_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
Voorbeeld:
11 SQL BIND Q881 "TAB_EXAMPLE.MESS_NR"
12 SQL BIND Q882 "TAB_EXAMPLE.MESS_X"
13 SQL BIND Q883 "TAB_EXAMPLE.MESS_Y"
14 SQL BIND Q884 "TAB_EXAMPLE.MESS_Z"
. . .
20 SQL Q5 "SELECT MESS_NR,MESS_X,MESS_Y,
MESS_Z FROM TAB_EXAMPLE"
. . .
30 SQL FETCH Q1 HANDLE Q5 INDEX+Q2
. . .
50 SQL ROLLBACK Q1 HANDLE Q5
433