我有一个用户定义的Postgres函数,可以执行动态INSERT
.代码不可读,而且由于字符串转义,很难对其进行修改.有没有办法让它看起来更好?
以下是我的代码,为简洁起见省略了一些部分:
BEGIN
-- some code
-- escape nightmare for teammates goes here
EXECUTE 'INSERT INTO ' || _table || E'(col1, col2, col3) VALUES (\'' || _col1 ||
E'\', \'' || _col2 || E'\''|| E', \'' || _col3::text ||E'\') ON CONFLICT DO NOTHING RETURNING code' INTO _code;
-- more code
END
有没有办法简化E'\', \''
这样的事情?