Nun, die Ausgangssituation beschränkte sich eben nicht auf die reine Set-Anweisung sondern auf die variable Bibliothek. Nun lassen sich eben Tabellen und Libnamen nicht per "?" angeben was wiederum zu dynamischem SQL führte.

Jedoch "das SQL-Statement kann auch direkt im PREPARE zusammengesetzt werden" stimmt zwar, aber ich prüfe das Ergebnis gerne in einer Variablen.

Und was die Anzahl der SQL's angeht so ist die letztlich egal (sind nur Speicherzugriffe), da eine VALUES-Anweisung implizit auch nichts anderes als Open/Fetch/Close machen kann.
Und ob nun commit oder nicht das soll wirklich jeder selber entscheiden.
Schließlich will man ja an Recoveryprozeduren auch noch verdienen;-).

Ansonsten vielen Dank an Birgitta die mit ihren Ausführungen die vorherigen Beiträge bestätigte.