ich möchte einer PL\pgSQL Funktion ein Text Array als IN Parameter übergeben. Allerdings scheitere ich anscheinend an irgendwelchen quotes (Vermutlich)
Funktion:
CREATE OR REPLACE FUNCTION printquery2(
IN base_value text[]
) RETURNS text AS
$$
DECLARE
text_expression text;
BEGIN
FOR i IN 1..base_value.length LOOP
text_expression = text_expression || base_value[i] || ' | ';
END LOOP;
RETURN text_expression;
END;
$$
LANGUAGE plpgsql;
Aufruf z.B.
select * from printquery2("{'A2', 'A1'}");
Funktioniert leider nicht.
ERROR: column “{‘A2’, ‘A1’}” does not exist
Meine eigentliche Funktion macht was anderes als die Textelemente des Arrays zu konkatenieren. Aber eine Lösung dieses Beispiels würde mir bereits extrem helfen.
Datentypen, Arrays. Aber das du 8.1 verwendest hast du nicht dazu geschrieben. Ob das konkret jetzt schon in 8.1 oder erst in einer späteren Version klappt, weiß ich nicht.