php – 如何强制MySQL返回有限的行?

我想限制用户提交的
mysql查询的结果.

目前我只是通过
PHP解析查询字符串,然后在最后添加LIMIT.

对于具有许多嵌套选择/连接的更复杂查询,事情变得复杂且不太可预测.

有没有通用的方法强制mysql只返回有限的结果,即使用户要求全套?

ThanksArman

最佳答案 您要求一些服务器配置设置来限制所有查询返回的最大行数.也就是说,select * from mytable将返回最大x数(x在全局服务器配置中设置)或行,即使表中还有更多行.

不幸的是,这在MySQL的标准发行版中是不可能的.您可以对每小时的最大查询设置限制,甚至可以设置用户在服务器中可以执行的操作.但是,查询结果中的行数限制不能全局设置.

但是,您可以获取MySQL社区版源代码并添加全局查询结果限制的配置.
此外,如果您使用某种连接器连接到MySQL(例如,如果您从.NET连接到MySQL),您可以保持服务器不变,但修改连接器代码并在那里添加所需的限制配置选项.

点赞