Problembehandlung bei JavaScript-UDFs

Unter diesem Thema finden Sie Informationen zur Problembehandlung bei JavaScript-UDFs.

Unter diesem Thema:

Tipps

  • JavaScript unterscheidet Groß- und Kleinschreibung, aber SQL erzwingt die Großschreibung von Namen. Dies kann z. B. die Namen der Eingangsparameter der UDF betreffen. JavaScript-Code darf für das Verweisen auf die Namen der Eingangsparameter nur Großbuchstaben verwenden.

Problembehandlung

Fehlermeldung: Variable is not defined

Ursache

In einigen Fällen kann diese Fehlermeldung durch ein kaufmännisches Und-Zeichen (&) innerhalb eines CREATE FUNCTION-Befehls verursacht werden, da das kaufmännische Und-Zeichen das Variablensubstitutionszeichen ist. Beispiel:

create function mask_bits(...)
    ...
    as
    $$
    var masked = (x & y);
    ...
    $$;

Der Fehler tritt zu dem Zeitpunkt auf, zu dem die Funktion erstellt wird, nicht zu dem Zeitpunkt, zu dem die Funktion aufgerufen wird.

Lösung

Wenn Sie die Variablensubstitution nicht verwenden möchten, können Sie sie explizit deaktivieren. In SnowSQL können Sie beispielsweise die Variablensubstitution deaktivieren, indem Sie den folgenden Befehl ausführen:

!set variable_substitution=false;

Weitere Informationen zur Variablenersetzung finden Sie unter Verwenden von Variablen.