Мне нужно динамически генерировать имя столбца, которое мне нужно обновить в Postgresql из PHP. Вот код и ошибка:
$Col = "dog_".$Num."_pic"; $query_params = array( ':user_id_' => $CustomerID, 'dog_path' => $filePath, 'dog_col' => $Col) ; $sql = "UPDATE users SET `:dog_col`=:dog_path WHERE `username`=:user_id_";
Я также попробовал pg_escape_string()
со строкой.
Вот ошибка.
"SQLSTATE[42S22]: Column not found: 1054 Unknown column ''dog_1_pic'' in 'field list'"}
Вы не можете связывать имена столбцов в запросе:
$sql = "UPDATE users SET `:dog_col`=:dog_path WHERE `username`=:user_id_";
В этом случае вы должны использовать такую переменную:
$column = 'myColumn'; $sql = "UPDATE users SET $column = :dog_path WHERE username = :user_id_";