花费更多时间使用 DataTables 获取记录

Posted

技术标签:

【中文标题】花费更多时间使用 DataTables 获取记录【英文标题】:Taking more time to fetch records using DataTables 【发布时间】:2012-11-23 07:44:45 【问题描述】:

我正在使用DataTables 对结果进行分页。这是我正在使用的代码

$('#datatable_paging').dataTable(
                
                    "sPaginationType": "full_numbers",
                    "bLengthChange": false,
                    "iDisplayLength":15,
                    "bFilter": true,
                    "bSort": false,
                    "bInfo": true,
                    "bAutoWidth": false
                    
                );

现在,它工作正常,但问题是加载结果需要时间,因为我正在获取所有没有 LIMIT 的记录(例如:2000)。我确实在互联网上搜索过,我找到了这个链接。

    DataTables server-side processing example for php DataTables server-side processing example for Code-Igniter

在处理服务器端编码之前,我想确保LIMIT 我的查询与我上面发布的代码有任何设置吗?

【问题讨论】:

虽然数据表很好,但是如果你有数千条记录,它会花费很多执行时间我不会推荐它 我有 3k 行(和 10 个列),它加载 【参考方案1】:

您需要查看服务器端处理以加载记录。http://datatables.net/examples/data_sources/server_side.html

这样你只需要返回足够的记录来显示一个页面,每次点击下一步它都会做一个快速的ajax请求来获取下一批记录。

【讨论】:

【参考方案2】:

你可以在服务器端的数据库查询中设置一个LIMIT,这样可以减少将数据从数据库传输到PHP,然后将php转换为js所需的时间。 请让我知道是否有任何限制会阻碍使用 LIMIT 子句。

【讨论】:

我上面发布的代码是客户端进程。如果我们设置了限制,那么剩下的记录呢? 对不起..!!错误“您可以在查询本身中设置限制”-> 在服务器端脚本中的数据库查询中设置限制。它会起作用吗?

以上是关于花费更多时间使用 DataTables 获取记录的主要内容,如果未能解决你的问题,请参考以下文章

DataTables - 创建自定义分页样式(加载更多样式)

SQL 查询比平时花费更多时间

如果表中的行数很大(200 万),NDB cluster7.5(MySQL 5.7)在获取数据时会花费更多时间

Android:Firebase 花费太多时间来获取数据

Postgres- pgsql 花费更多时间从超过 15 亿行的表中检索数据

在 JSP 上使用 Jquery Ajax 在 Datatables 上显示