Установка лимита в запросе PDO в надежде на большую переносимость - PullRequest
1 голос
/ 28 мая 2009

Я начал использовать библиотеку PDO вместо Creole и обнаружил, что большинство подобных вещей, за исключением того, что я не могу найти функцию для установки предела.

Я не думаю, что мне следует включать оператор limit в строку запроса, поскольку MSSQL и MySQL не используют один и тот же синтаксис.

Ответы [ 2 ]

2 голосов
/ 28 мая 2009

Из руководства по PHP http://www.php.net/manual/en/ref.pdo-mysql.php

PDO предоставляет уровень абстракции доступа к данным, что означает, что независимо от того, какую базу данных вы используете, вы используете одни и те же функции для выдачи запросов и извлечения данных. PDO не обеспечивает абстракцию базы данных; он не переписывает SQL и не эмулирует отсутствующие функции.

Так как он не переписывает операторы SQL, вы не найдете метод для общего разбиения на страницы.

0 голосов
/ 28 мая 2009

Чтобы согласиться с тем, что сказал Ренато, вы должны знать, что только вызовы функций одинаковы для выполнения ваших операторов SQL, и что любой SQL, который вы отправляете на сервер, не изменяется. Кодирование SQL для нескольких баз данных может быть довольно сложным. Особенно, если вы хотите перейти от простых операторов SQL к более сложным вещам, таким как хранимые процедуры. Даже такие простые вещи, как вызовы функций (IsNull и IfNull), могут сделать вашу задачу намного сложнее, чем нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...