Laravel по-русски

Русское сообщество разработки на PHP-фреймворке Laravel.

Ты не вошёл. Вход тут.

#1 Laravel 5.x » Не выполняется запрос на функцию в базу данных » 19.05.2021 19:33:05

pavlostudent
Ответов: 0

В базе данных postgreSQL есть функция для создания поездки

CREATE OR REPLACE FUNCTION makeorder(board VARCHAR, date_j DATE, time_j TIME,VARIADIC dest VARCHAR[])
RETURNS VOID
AS $$
DECLARE tempo INT;
DECLARE jour INT;
BEGIN
INSERT INTO journeys(boarding,date_journey,time_journey) 
VALUES (board,date_j,time_j);
jour:=MAX(id) FROM journeys;
FOR i IN 1 .. array_upper(dest,1) LOOP
INSERT INTO destinations(dest_name,id_prev,journ_id)
VALUES(dest[i],tempo,jour);
tempo:=MAX(id) FROM destinations;
END LOOP;
END;
$$ Language plpgsql;

Пытаюсь вызвать ее через

 
        $journey=new Journey();
        $journey->boarding=$request->input('From');
        $journey->date_journey=$request->input('date');
        $journey->time_journey=$request->input('time');
        $destin=new Destination();
        $destin->dest_name=$request->input('To');
        DB::statement('select * from makeorder(?,?)',[$journey,$destin]);

Ошибок нет, но в базе данных не выполняется сама функция, таблицы не заполняются

Подвал раздела