Da PL / pgSQL völlig neu ist, was bedeuten doppelte Dollarzeichen in dieser Funktion :
CREATE OR REPLACE FUNCTION check_phone_number(text)
RETURNS boolean AS $$
BEGIN
IF NOT $1 ~ e'^\\+\\d{3}\\ \\d{3} \\d{3} \\d{3}$' THEN
RAISE EXCEPTION 'Wrong formated string "%". Expected format is +999 999';
END IF;
RETURN true;
END;
$$ LANGUAGE plpgsql STRICT IMMUTABLE;
Ich vermute , dass, in RETURNS boolean AS $$
, $$
ist ein Platzhalter.
Die letzte Zeile ist ein bisschen rätselhaft: $$ LANGUAGE plpgsql STRICT IMMUTABLE;
Was bedeutet übrigens die letzte Zeile?
$$
und Sie können etwas Neues lernen, indem Sie es lesen, z. B. gibt es auch$foo$