«

»

Dez 28

FOR-Schleife über eine Liste von Werten

Neben der Iteration über eine Liste von aufeinanderfolgenden, ganzen Zahlen oder den Records einer Select-Abfrage gibt es eine einfache Möglichkeit in PL/SQL eine Iteration über eine Liste von Werten durchzuführen. Hierfür kann der in Oracle definierte Collection-Typ sys.dbms_debug_vc2coll verwendet werden.

Mit diesem Collection-Typ kann eine Liste von Werten als Zeichenfolgen gespeichert werden und über eine select-Abfrage in einer Cursor For-Schleife verwendet werden, wie im nachfolgenden Beispiel gezeigt wird. Der Feldname für den Zugriff auf die Werte der Collection heist column_value.

Alternativ kann man auch selbst einen eigenen Typ definieren, wobei man dann nicht auf den Datentyp varchar2 eingeschränkt ist (in den folgenden Beispielen wird eine Liste von numerischen Werten erstellt):

Dieser eigene Typ kann auch direkt in der Datenbank angelegt werden, um diesen an mehreren Stellen zu verwenden:

und dann in einer for-Schleife verwendet werden