【问题标题】:MySQL showing that select * from has internal limit 0,1000 . how to stop itMySQL 显示 select * from 具有内部限制 0,1000 。如何阻止它
【发布时间】:2014-04-05 09:05:41
【问题描述】:

我正在使用Mysql workbench 访问我的Mysql database 服务器。我遇到了问题。 在我的数据库中有一个名为tags 的表。将来会有超过数千个标签。问题是当我执行select * from tags; 查询时Mysql workbench 正在执行这个(或采取行动)就像@ 987654328@。我给你一个快照

我的问题是如何停止它。因为当我启动我的应用程序时,它将有数千个(远远超过 1000 个)标签。如果它在内部暗示 LIMIT 0, 1000,那么我的 php 脚本将不会包含所有标签执行我的标记系统的时间。

我只想在select *没有限制。我该怎么做?修改后的Select * 查询将是什么,没有任何限制

【问题讨论】:

  • 听起来像是工作台中的首选项设置。这当然不是 MySQL 的事情。您当然可以通过代码或控制台界面查看所有记录。
  • @Fluffeh ...你是说如果我通过 php 运行它就不会有这样的限制?
  • @RitabrataGautam 当你通过代码运行它时没有这样的限制。

标签: php mysql select mysql-workbench


【解决方案1】:

转到 -> MySQL Workbench -> 编辑菜单 -> 首选项 -> SQL 编辑器 -> 查询结果 -> 取消选中限制行。

【讨论】:

  • 在我的情况下有点不同转到 -> MySQL Workbench -> 编辑菜单 -> 首选项 -> SQL 编辑器 -> SQL 执行 -> 取消选中“限制行”。
【解决方案2】:

您看到的限制只是工作台中的优化,试图限制从大表返回的行数。

当您从控制台或通过代码运行查询时,返回的行数或行数没有限制。

尽管如此,通常最好的做法是手动限制返回的行数,或者至少一次处理一行结果。原因是,如果您尝试一次获取所有记录,则必须为该结果集分配与整个集将使用的内存一样多的内存。如果一次处理一行,则可以重复使用相同的内存。

【讨论】:

    【解决方案3】:

    我补充了 Fluffeh 的回答:您可以将限制更改为您想要的任何值,包括完全关闭它(请参阅 MySQL Workbench 首选项)。

    【讨论】:

      【解决方案4】:

      在我的情况下有点不同转到 -> MySQL Workbench -> 编辑菜单 -> 首选项 -> SQL 编辑器 -> SQL 执行 -> 取消选中“限制行”。

      在随附的屏幕截图中,可以看到限制禁用复选框。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-08-09
        • 1970-01-01
        • 2012-07-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-06-17
        • 1970-01-01
        相关资源
        最近更新 更多