Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在php mysql中,通过一次数据库交互获取和分页记录超过200000条_Php_Javascript_Mysql - Fatal编程技术网

在php mysql中,通过一次数据库交互获取和分页记录超过200000条

在php mysql中,通过一次数据库交互获取和分页记录超过200000条,php,javascript,mysql,Php,Javascript,Mysql,我必须一次获取超过200000条记录,并使用每页100或1000条记录的分页,而无需反复与数据库交互 就像我们可以有一个虚拟缓存或隐藏的记录集,从那里我的分页将显示记录。我听说这是可能的,但没有找到合适的解决方案 请建议我,如果有人对我的要求,我使用PHP和mysql的解决方案 谢谢,您有两种选择: 执行一个DB事务并重载客户端DOM或执行多个DB调用 我的建议是采取中间路线,在10000中选择,显示数据,然后在他们希望从后面分页时显示更多结果 将所有记录存储在cookie中,然后对cookie

我必须一次获取超过200000条记录,并使用每页100或1000条记录的分页,而无需反复与数据库交互

就像我们可以有一个虚拟缓存或隐藏的记录集,从那里我的分页将显示记录。我听说这是可能的,但没有找到合适的解决方案

请建议我,如果有人对我的要求,我使用PHP和mysql的解决方案

谢谢,

您有两种选择: 执行一个DB事务并重载客户端DOM或执行多个DB调用


我的建议是采取中间路线,在10000中选择,显示数据,然后在他们希望从后面分页时显示更多结果

将所有记录存储在cookie中,然后对cookie的内容进行分页。您可以将结果存储在用户会话中,但如果存储多个搜索结果,最终将使用大量内存。为什么你不能从数据库中获得好几次?为了平衡速度和内存,你应该考虑从内存中获取最大1000个记录和分页等等。在1000个记录被浏览之后,你可以在缓存中获得另一个1000,但是在任何时候都可以记录最大1000个记录。这可能意味着您一次向某个用户的web页面提供100或1000条记录。鉴于HTTP是一种无状态协议,当用户需要下一页时,如何保证其余记录仍在RAM中?你能从用户的角度解释一下你想做什么吗?