Как я мог переписать эту функцию pgplsql в стандартном SQL? - PullRequest
2 голосов
/ 30 марта 2011

Я разрабатываю приложение с использованием Heroku, но у них не загружен язык plpgsql для Postgres, что вызывает проблему при попытке запустить следующее:

CREATE FUNCTION profiles_search_trigger() RETURNS trigger AS $$
  begin
    new.search_vector :=
      setweight(to_tsvector('pg_catalog.english', coalesce(new.display_name,'')), 'A') ||
      setweight(to_tsvector('pg_catalog.english', coalesce(new.about,'')), 'B') ||
      setweight(to_tsvector('pg_catalog.english', coalesce(new.music_education,'')), 'D') ||
      setweight(to_tsvector('pg_catalog.english', coalesce(new.other_experience,'')), 'D') ||
      setweight(to_tsvector('pg_catalog.english', coalesce(new.favourite_artists,'')), 'D');
    return new;
  end
  $$ LANGUAGE plpgsql;

Как я могу переписать это, используястандартный SQL, а не plpgsql?

1 Ответ

4 голосов
/ 30 марта 2011

Из документов :

В настоящее время невозможно написать функцию триггера на простом языке функций SQL.

...