ここに、この目的のためだけに関数を作成する必要なしに、単純なスクリプトで型を作成するための完全なソリューションを追加します。
--create types
DO $$
BEGIN
IF NOT EXISTS (SELECT 1 FROM pg_type WHERE typname = 'my_type') THEN
CREATE TYPE my_type AS
(
--my fields here...
);
END IF;
--more types here...
END$$;