Procedure that stores data from text fields into database

Viewed 10

I am creating web app and this is the form where the user inputs the data.

enter image description here

So there are 6 text fields, and the following query works if you input random data that is not from this form, but when I am trying to get data from these text fields it doesn't work, I am getting error message from the exception part of the procedure.

Create or replace function addMatchToDB(dataa character varying)
    returns varchar
    language plpgsql
as
$$
Declare
    innerData jsonb;
    p_res     varchar(50);
Begin
    innerData = dataa::jsonb;
    INSERT INTO mts_stolni_partija(id, rezultat, datum, id_igrac1, id_igrac2, id_igrac3, id_igrac4)
    VALUES (nextval('mts_sekvencaStolni'), innerData ->> 'FORM_INPUT_STOLNI_REZ',
            innerData ->> 'FORM_INPUT_STOLNI_UTDATUM',
            (SELECT ID FROM mts_stolni_igrac WHERE ime = innerData ->> 'FORM_INPUT_STOLNI_IGRAC1'),
            (SELECT ID FROM mts_stolni_igrac WHERE ime = innerData ->> 'FORM_INPUT_STOLNI_IGRAC2'),
            (SELECT ID FROM mts_stolni_igrac WHERE ime = innerData ->> 'FORM_INPUT_STOLNI_IGRAC3'),
            (SELECT ID FROM mts_stolni_igrac WHERE ime = innerData ->> 'FORM_INPUT_STOLNI_IGRAC4'));
    p_res := '1|successful!';
    return p_res;
EXCEPTION
    WHEN OTHERS THEN
        p_res := '-1|Error!';
        RETURN p_res;
End;
$$;
0 Answers
Related