0

第一的,

  • 我有一张有 1500 条记录的表
  • 我正在使用 MySQL 5.0.54。
  • 我正在为 MySQL 5.0.97 使用 dbForge

桌子:

CREATE TABLE IF NOT EXISTS s_users(
  user_id MEDIUMINT(9) NOT NULL,
  employee_id INT(11) NOT NULL,
  surname VARCHAR(50) NOT NULL,
  firstname VARCHAR(50) DEFAULT NULL,
  phone VARCHAR(25) DEFAULT NULL,
  email VARCHAR(100) DEFAULT NULL,
  organization_eng VARCHAR(100) DEFAULT NULL,
  organization_fra VARCHAR(100) DEFAULT NULL,
  unit_id SMALLINT(6) NOT NULL DEFAULT 0,
  unit_name_eng VARCHAR(150) DEFAULT NULL,
  unit_name_fra VARCHAR(150) DEFAULT NULL,
  status ENUM('active', 'inactive') NOT NULL DEFAULT 'inactive',
  udate TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)
ENGINE = MYISAM
AVG_ROW_LENGTH = 131
CHARACTER SET utf8
COLLATE utf8_unicode_ci;

该声明:

select * from s_users;

以下是重现的步骤:

  1. 运行查询:select * from s_users;
  2. 不要滚动到记录集的末尾,它表示 1 of 302+
  3. 在另一个窗口中,运行查询显示完整进程列表;
  4. 状态下会显示Writing to net
  5. 直到我滚动到初始 SQL 语句的记录集的末尾,或关闭运行语句的选项卡,查询将继续占用 CPU(时间列不断增加)并阻止其余语句。

我想我在 dbForge 的某个地方缺少一个设置?

更新#1

这引起了我的注意: https ://stackoverflow.com/a/802686/503246

也许 DBForge 正在使用导致这种情况的特定 C API 调用?

4

1 回答 1

1

看来您必须切换到分页模式。默认情况下,它处于获取模式,这会保持连接打开,直到您导航到记录集的末尾。

要更改为分页模式:

  1. 从主菜单中选择“工具 -> 选项”。“选项”窗口打开。
  2. 导航到“数据编辑器 -> 常规”分支。
  3. 选择“默认使用分页模式”选项并设置“初始页面大小”。
于 2013-01-14T12:29:03.293 回答