Beispiele
-
In diesem Beispiel werden die Zahlen 0 bis 127 und die entsprechenden ASCII-Zeichen in die Tabelle
ASCIITABLE
eingefügt:EXECUTE BLOCK AS declare i INT = 0; BEGIN WHILE (i < 128) DO BEGIN INSERT INTO AsciiTable VALUES (:i, ascii_char(:i)); i = i + 1; END END
-
Das nächste Beispiel berechnet das geometrische Mittel zweier Zahlen und gibt es an den Benutzer zurück:
EXECUTE BLOCK (x DOUBLE PRECISION = ?, y DOUBLE PRECISION = ?) RETURNS (gmean DOUBLE PRECISION) AS BEGIN gmean = SQRT(x*y); SUSPEND; END
Da dieser Block Eingangsparameter hat, muss er zuerst vorbereitet werden.Anschließend können die Parameter eingestellt und der Block ausgeführt werden.Es hängt von der Client-Software ab, wie dies zu tun ist und ob es überhaupt möglich ist – siehe die Hinweise unten.
-
Unser letztes Beispiel nimmt zwei ganzzahlige Werte an,
kleinste
undgrößte
.Für alle Zahlen im Bereichkleinste
…größte
gibt der Block die Zahl selbst, ihr Quadrat, ihren Kubus und ihre vierte Potenz aus.EXECUTE BLOCK (smallest INT = ?, largest INT = ?) RETURNS (number INT, square BIGINT, cube BIGINT, fourth BIGINT) AS BEGIN number = smallest; WHILE (number <= largest) DO BEGIN square = number * number; cube = number * square; fourth = number * cube; SUSPEND; number = number + 1; END END
Auch hier hängt es von der Client-Software ab, ob und wie Sie die Parameterwerte einstellen können.