array must have even number of elements
От | Susan Hurst |
---|---|
Тема | array must have even number of elements |
Дата | |
Msg-id | c0c90d03d4c8554045cb0e77bb81adf9@mail.brookhurstdata.net обсуждение исходный текст |
Ответы |
Re: array must have even number of elements
|
Список | pgsql-general |
Why must an array have an even number of elements? I need to use a trigger function on any table, some of which may have an odd number of columns that I want to cleanse before inserting/updating. Is there a workaround for this? ERROR: array must have even number of elements SQL state: 2202E Context: SQL statement "SELECT ($1 #= hstore(array[trim(replace(regexp_replace($1.c,'( ){2,}',' ','g'),' ',' ')),trim(replace(regexp_replace($1.vc,'( ){2,}',' ','g'),' ',' ')),trim(replace(regexp_replace($1.t,'( ){2,}',' ','g'),' ',' '))])).*" PL/pgSQL function store.trim_string_before_dml() line 44 at EXECUTE -- my test table create table dm.trg_test (c character(8), vc varchar(16), t text); insert into dm.trg_test (c,vc,t) values ('ctest',' vctest ',' ttest '); -- code snippet that produced the error. -- new will be substituted for $1 during execution with using clause l_query_string := 'select ($1 #= hstore(array[' || l_column_list || '])).*'; execute format(l_query_string) using new into new; return new; Thanks for your help! -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Susan E Hurst Principal Consultant Brookhurst Data LLC Email: susan.hurst@brookhurstdata.com Mobile: 314-486-3261
В списке pgsql-general по дате отправления: