Php MySQL查询进度信息

Php MySQL查询进度信息,php,jquery,mysql,Php,Jquery,Mysql,我有一个执行mysql查询的php脚本。我有一个HTML/JQuery前端,它向脚本发起一个异步调用(AJAX),请求它删除一些数据。 我知道我的数据池非常小,但是如果它变大了,我想显示已经处理了多少行(因为不可能显示估计的时间,因为在查询完成之前它是未知的) 这个问题是理论性的而不是实践性的。有没有一种方法可以知道在假定查询仍在运行时处理了多少行 它可以是delete或select语句 我的基本问题是:是否可以让一个php脚本执行一个长查询,而另一个php脚本在调用时仍在运行时检索其状态?(例

我有一个执行mysql查询的php脚本。我有一个HTML/JQuery前端,它向脚本发起一个异步调用(AJAX),请求它删除一些数据。 我知道我的数据池非常小,但是如果它变大了,我想显示已经处理了多少行(因为不可能显示估计的时间,因为在查询完成之前它是未知的)

这个问题是理论性的而不是实践性的。有没有一种方法可以知道在假定查询仍在运行时处理了多少行

它可以是delete或select语句

我的基本问题是:是否可以让一个php脚本执行一个长查询,而另一个php脚本在调用时仍在运行时检索其状态?(例如,以某种方式检索特定查询或其他内容的受影响行?)

为了简单起见,假设我有两个php文件,我可以直接从浏览器中调用——一个执行查询,另一个可能检索其状态。可能吗?如果可能的话,有人能给我指出正确的方向吗?我是否必须使用某种存储过程,至少报告已处理的行数

这个问题是理论性的而不是实践性的。有没有一种方法可以知道在假定查询仍在运行时处理了多少行

不是本地人,但你可以四处工作

有没有可能让一个php脚本执行一个长查询,而另一个脚本在调用时仍在运行时检索其状态?(例如,以某种方式检索特定查询或其他内容的受影响行?)

这两个脚本应该共享一个公共存储位置,以便“通信”,您可以使用Redis来实现这一目的

执行查询的脚本还更新来自Redis的值,另一个脚本从Redis读取数据并将其返回到浏览器

另一种方法是成批执行查询(10、20等),您可以在客户端计算已处理的查询。理论上,如果查询脚本不返回错误,则意味着所有查询都已成功执行,并且可以增加计数值。重复该过程,直到查询脚本返回0个已执行查询的值,这意味着您已完成


有关更多信息,请参阅和

如果要删除行,可以获得初始计数,然后使用来比较“现在”和以前的行数。这可能会受到行或表锁定的影响;在这些步骤中,您将执行并获取查询执行的状态。。。第一个php脚本将运行查询,第二个脚本将检查状态。是的-对于删除行,我可以按照Jay Blanchard的建议做。但是SELECT语句是否也有类似的功能?受影响的排?或者类似的东西?你能详细介绍一下Redis或者给我指一个链接吗?你的其他建议听起来像是如果没有其他办法我会做的事情。我只是希望有一种方法可以在语句仍在执行时获得(已经)受影响行的一些信息。我添加了两个链接,您可以从中获得更多信息。Redis只是一个例子,但您可以使用任何键值存储系统。