[英]php pagination using sql server Limit and Offet
我对php分页有问题。 我试图从数据库列表并生成页面。 下面有一部分代码。 如果我是对的,我无法在SQL Server中使用限制和偏移量?
$stmt = $conn->prepare('SELECT * FROM db_name ORDER BY use_by_date LIMIT :limit OFFSET :offset');
$stmt->bindParam(':limit', $limit, PDO::PARAM_INT);
$stmt->bindParam(':offset', $offset, PDO::PARAM_INT);
$stmt->execute();
if ($stmt->rowCount() > 0) {
$stmt->setFetchMode(PDO::FETCH_ASSOC);
$iterator = new IteratorIterator($stmt);
foreach ($iterator as $row) {
echo '<p>', $row['name'], '</p>';
}
}
else {
echo '<p>No results could be displayed.</p>';
}
怎么了?
似乎您忘记了实际获取数据:
$rows = $stmt->fetchAll();
foreach ($rows as $row) { ... }
http://php.net/manual/en/pdostatement.fetchall.php
此外,根据sevnlabs的回答,T-SQL中没有限制。
SQL Server中没有限制。 您可以使用SELECT TOP XY来限制结果。 可以通过最后接收的主键来实现偏移。 下一页的内容类似“ WHERE id> lastReturnedId”。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.