2013-04-05 5 views
0

При определении EXECUTE в функции PostgreSQL я могу присвоить именам таблиц ::regclass, чтобы убедиться, что они являются действительными именами отношений. Теперь я хочу расширить это до имен столбцов, но я не могу найти правильный тип для этого.Как указать имя столбца, чтобы предотвратить SQL-инъекцию?

Мой код:

... 
BEGIN 
    EXECUTE ' 
    UPDATE ' || tbl::regclass || ' SET ' || col || '=someVal WHERE idcol=id 
    '; 
END; 
... 

Что поставить после col, чтобы привести его к имени столбца?

ответ

Смежные вопросы