Я пытаюсь выполнить триггер до вставки, который обновляет один из столбцов, который будет вставлен, со значением, взятым из другого столбца в той же записи, однако выгода заключается в том, что это значение является первым значением указанного столбца после преобразование его в массив. когда я включаю функцию или массив, я получаю синтаксическую ошибку, но примеры, которые я нашел для правильного синтаксиса, не содержат деталей, необходимых для работы моего кода. Вот мой код:
Схема выглядит следующим образом
create table events (
id int primary key,
performers varchar,
performer_id varchar
);
Функция:
create function events_set_performer() returns trigger
language plpgsql
as $$
declare
performer_ varchar := '0';
BEGIN
set NEW.performer_id = (string_to_array(NEW.performers,':'))[1];
return new;
END;
$$;