Sql select, 9 dostp do tabeli z instrukcjami sql – HEIDENHAIN TNC 320 (340 551-01) Instrukcja Obsługi
Strona 354
354
10 Programowanie: Q parametry
10.9 Dostp do tabeli z instrukcjami SQL
SQL SELECT
SQL SELECT selekcjonuje wiersze tabeli i transferuje te wiersze do
Result set.
SQL serwer zapisuje dane wierszami do Result set. Wiersze zostaj
numerowane pocz wszy od 0 w rosn cej kolejności. Ten numer
wiersza, INDEKS, zostaje wykorzystywany w poleceniach SQL fetch i
update.
W opcji SQL SELECT...WHERE... podajemy kryteria selekcji. Tym
samym można ograniczyć liczb transferowanych wierszy. Jeśli nie
używamy tej opcji, to zostaj wczytane wszystkie wiersze tabeli.
W opcji SQL SELECT...ORDER BY... podajemy kryterium selekcji.
Kryterium to składa si z oznaczenia kolumny i słowa kodu dla
rosn cego/malej cego sortowania. Jeśli nie używa si tej opcji, to
wiersze zostaj odkładane w przypadkowej kolejności.
Przy pomocy opcji SQL SELCT...FOR UPDATE blokujemy
wyselekcjonowane wiersze dla innych aplikacji. Inne aplikacje mog
te wiersze w dalszym ci gu czytać, jednakże nie mog ich zmieniać.
Prosz koniecznie używać tej opcji, jeśli dokonuje si zmian w
zapisach tabeli.
Pusty Result set: Jeżeli brak wierszy, odpowiadaj cych kryterium
selekcji, to serwer SQL podaje obowi zuj cy handle ale nie przesyła
zapisów tabeli.
Przykład: selekcjonowanie wszystkich wierszy
tabeli
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"
Przykład: Selekcja wierszy tabeli z opcj
WHERE
. . .
20 SQL Q5 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
TAB_EXAMPLE WHERE MESS_NR<20"
Przykład: Selekcja wierszy tabeli z opcj
WHERE i Q parametrem
. . .
20 SQL Q5 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
TAB_EXAMPLE WHERE MESS_NR==:’Q11’"
Przykład: Nazwa tabeli definiowana za pomoc
nazwy ścieżki i pliku
. . .
20 SQL Q5 "SELECT
MESS_NR,MESS_X,MESS_Y, MESS_Z FROM
’V:\TABLE\TAB_EXAMPLE’ WHERE
MESS_NR<20"