Doctrine Silex запрос со связанными параметрами не удался

[РЕДАКТИРОВАТЬ] Удалено параметризованное имя таблицы и измененные значения порядка и минимального количества рейтинга, чтобы различать значения [/ EDIT]

У меня есть простая таблица со следующей таблицей создания

CREATE TABLE ratings_cache (
id INT NOT NULL AUTO_INCREMENT,
movie_id INT NOT NULL,
movie_title VARCHAR(128),
rating DECIMAL(5,4),
rating_count INT DEFAULT 0,
PRIMARY KEY (`id`)
);

Теперь я хочу запросить его с помощью Doctrine с некоторыми параметрами (app это приложение Silex конечно):

$sql = "SELECT ratings_cache.*
FROM :table_name
WHERE rating_count > :min_rankings
ORDER BY rating DESC, rating_count DESC
LIMIT :limit";
$stmt = $this->app['db']->prepare($sql);
$stmt->bindValue(':min_rankings', $this->minRanks);
$stmt->bindValue('limit', $this->limit);
return $stmt->execute()->fetchAll();

Как вы можете видеть, запрос в этой форме прост и работает без проблем, когда я запускаю его через консоль Mysql, но когда я запускаю приведенный выше код, я получаю следующую ошибку:

    An exception occurred while executing '
SELECT *
FROM ratings_cache
WHERE rating_count > :min_rankings
ORDER BY rating DESC, rating_count DESC
LIMIT :limit' with params [20, 30]:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''30'' at line 5

Я понимаю, что проблема может быть в чем-то тривиальном, но я не очень привык к Doctrine (обычно предпочитаю обрабатывать запросы самостоятельно) и просто не знаю, что здесь может быть не так …

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]