PL/PgSQL-Skripte schreiben

PL/PgSQL-Code in der Skript-Engine

In Eliona können Skripte nicht nur in Python, sondern auch in PL/PgSQL geschrieben werden. Dies ermöglicht die direkte Verarbeitung von SQL-Abfragen innerhalb der Skript-Engine.


Skript-Definition

Beim Erstellen eines neuen PL/PgSQL-Skripts in der Skript-Engine wird automatisch eine Template-Funktion vorgeschlagen. Dieses Template dient als Ausgangspunkt für die Skripterstellung.

DO $$
DECLARE
    -- Hier können Variablen deklariert werden
BEGIN
    -- Hier können SQL-Abfragen und Operationen ausgeführt werden
END $$;

Beispiel: Zeitstempel aktualisieren

Das folgende Beispiel zeigt, wie ein Skript den aktuellen Zeitstempel (NOW()) aus der Datenbank abruft und ihn für ein bestimmtes Asset (asset_id = 1) in der heap-Tabelle aktualisiert:

DO $$
    DECLARE r timestamptz;
BEGIN
    SELECT NOW() INTO r;
    UPDATE heap SET ts = r WHERE asset_id = 1;
END$$;

Das Skript speichert den aktuellen Zeitstempel in der heap-Tabelle für das Asset mit der ID 1

Last updated

Was this helpful?