【发布时间】:2023-10-18 14:32:01
【问题描述】:
我正在尝试使用带有 MS SQL 的 PHP PDO 设置数据表的分页,因为“限制”不适用,我发现很难让代码工作。
我尝试过“TOP”语法,但它只会过滤指定的数字,分页不起作用。
我已经尝试过偏移和获取仍然无法正常工作。
这些是使用Mysql时的工作代码,它很容易理解和执行。
if($_POST["length"] != -1)
{
$query .= 'LIMIT ' . $_POST['start'] . ', ' . $_POST['length'];
}
这些是我尝试过的代码(对不起,我的编码不是很好):
//if($_POST["length"] != -1)
{
Trial 1 : //$query .= "TOP " . $_POST['start'] . " OFFSET " . $_POST['length'];
Trial 2 : //$query .= "SELECT * from item ORDER BY id DESC offset 0 rows fetch next 10 rows only ";
Trial 3 ://$query .="AND id BETWEEN ".intval( $_POST["start"] )." AND ".intval( $_POST["length"] );" "
}
结果应该是一个分页,每条记录有 10 条过滤记录。enter image description here
更新 1:
这是我尝试在 MS SQL 服务器中测试但出现错误的查询屏幕截图(使用 MS SQL 2008)
【问题讨论】:
标签: php jquery sql sql-server datatables