ich eine Tabelle mit einem enum
Typ in ihm ENUM und habe ich eine Funktion, um Daten in der diese Tabelle. Ich mag diese Funktion großzügig sein, was zu akzeptieren, so nehme ich ein text
als Aufzählungstyp und will es später werfen.Wie String-Wert zu werfen
Dies ist die Enum:
CREATE TYPE public.enum_log_priority AS ENUM (
'critical','error','warning','notice','debug'
);
Und dies ist die Funktion:
CREATE OR REPLACE FUNCTION public.log_write(
_message text,
_priority text
) RETURNS integer AS
$body$
BEGIN
_priority = lower(_priority);
INSERT INTO log (message, priority) VALUES (_message, _priority);
RETURN 0;
END
$body$
LANGUAGE 'plpgsql';
Ich weiß, dass dies nicht funktioniert:
ERROR: column "priority" is of type enum_log_priority but expression is of type text
aber wie kann ich dies tun ?
Bitte geben Sie die Struktur von enum_log_priority mit allen möglichen Werten –