SELECT DIRECT-Anweisung (select_direct_statement:_positioned)
Die SELECT DIRECT-Anweisung (
select_direct_statement:_positioned ) selektiert eine Zeile einer Tabelle. Die Selektion erfolgt mit Hilfe eines Standpunktes in einer Ergebnistabelle.Syntax
<select_direct_statement:_positioned> ::= SELECT DIRECT <select_column>,...
INTO <parameter_spec>,... FROM <table_name>
WHERE CURRENT OF <result_table_name> [<lock_option>]
Erläuterung
Der Tabellenname in dieser SELECT DIRECT-Anweisung muß mit dem Tabellennamen in der
FROM-Klausel der QUERY-Anweisung übereinstimmen, die die Ergebnistabelle erzeugt hat.Die Ergebnistabelle muß mit FOR UPDATE angegeben worden sein.
Wenn der Cursor auf einer Zeile der Ergebnistabelle steht, werden aus der korrespondierenden Zeile Spaltenwerte selektiert und Parametern zugewiesen. Korrespondierend ist die Zeile aus der in der FROM-Bedingung der QUERY-Anweisung angegebenen Tabelle, aus der die Zeile der Ergebnistabelle gebildet wurde. Für die Zuweisungen der Werte gelten die bei der
FETCH-Anweisung aufgeführten Regeln.Wenn der Cursor nicht auf einer Zeile der Ergebnistabelle steht, wird eine Fehlermeldung ausgegeben, und den in den Parameterspezifikationen angegebenen Parametern werden keine Werte zugewiesen.
Im interaktiven Betrieb kann
INTO <parameter_spec>,... entfallen.Die LOCK-Option bestimmt, welche Sperre auf die gelesene Zeile gesetzt wird.
Die Angabe einer LONG-Spalte in einer selektierten Spalte (
select_column ) ist nur in der obersten Folge von selektierten Spalten in dieser SELECT DIRECT-Anweisung zulässig.Siehe auch:
SELECT DIRECT-Anweisung (select_direct_statement:_searched)