- I have 4 fields in a table, two are date type and two are time type, and i have arrays to insert from them to this table. - I have a function to insert to this table: IN "p_fromdates" _varchar=NULL::character varying[], IN "p_todates" _varchar=NULL::character varying[], IN "p_fromtimes" _varchar=NULL::character varying[], IN "p_totimes" _varchar=NULL::character varying[], - and I am inserting them like this : unnest(p_fromdates::_varchar)::date, unnest(p_todates::_varchar)::date, unnest(p_fromtimes::_varchar)::time, unnest(p_totimes::_varchar)::time, - However when passing null values (empty arrays), the record is not inserted, - I have tried to handle it but I didn't find any way, always the record is not inserted if the 4 arrays are empty. Postgresql version : PostgreSQL 14.6 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.5.0 20210514 (Red Hat 8.5.0-15), 64-bit
This is not a bug, it is actually doing exactly what one would expect to happen if you ask the system to "insert nothing into this table".
null and "empty array" are two very different things.
What is the system supposed to insert if you don't provide it any values?
It is better if you provide an actual executable SQL script when asking for help.