Я пытаюсь использовать LIMIT с PDO SQL.
Мой код такой:
$sql = "SELECT * FROM TblWerte LIMIT :limit1";
$result = $db->prepare($sql);
$result->bindParam(':limit1', $limit1);
$limit1 = 15;
$result->execute();
Но когда я пишу $ result-> execute (); Я продолжаю получать эту ошибку:
PHP Неустранимая ошибка: Uncaught PDOException: SQLSTATE [42000]: [Microsoft] [ODB C Driver 17 для SQL Server] [SQL Server ] Falsche Syntax in der Nähe von "@ P1". in C: ... \ werte. php: 96
Трассировка стека:
0 C: \ ... \ werte. php (96): PDOStatement-> execute ()
1 {main}
вставлено C: \ ... \ werte. php в строке 96
Строка 96 - это «$ result-> execute ();»
Я уже пробовал другое, например, используя bindValue()
вместо bindParam()
, я пытался напрямую преобразовать значение "limit1"
в целое число в bindParam()
...
Решение Мне пришлось использовать TOP вместо LIMIT. Также мне пришлось удалить часть bindParams ().
$sql = "SELECT TOP 15 * FROM TblWerte ORDER BY ID DESC";
$result = $db->prepare($sql);
$result->execute();