Привет всем, я пытаюсь обновить до логического значения в своей таблице, поэтому у меня возникла ошибка PDOException, и я не знаю, почему:
Fatal error: Uncaught PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax
Мой код строки sql таков:
public function updateSignal(Comments $comment)
{
$req = 'UPDATE Comments SET signal = TRUE WHERE idComments = :comment';
$result = $this->getBdd()->prepare($req);
$result->bindValue(':comment', $comment->getIdComments());
return $result->execute();
}
Я не нахожу, где мой синтаксис ошибки, пожалуйста, нужна помощь Спасибо
Какой тип возвращаемого значения у $comment->getIdComments()
«s» в комментариях заставляет его звучать как множественное число, поэтому он может возвращать массив. Также можете ли вы подтвердить, что $this->getBdd()
использует класс PDO, а не библиотеку?
Попробуйте изменить true на 1
SIGNAL
— зарезервированное слово. Лучше избегать этого, но вы можете использовать его, если заключите его в обратные кавычки.
$req = 'UPDATE Comments SET `signal` = TRUE WHERE idComments = :comment';
(зарезервированные слова MySQL)
@AlprodGrm Добро пожаловать. Пожалуйста, не забудьте принять ответ, нажав на галочку
НЕ сокращайте сообщение об ошибке.