如何设置一个简单的while循环来从MySQL工作台运行测试?

Dav*_*rks 1 mysql sql mysql-workbench

我想在mysql workbench中运行一个简单的测试.

我想在一个循环中运行3次查询1000次,我想在2种不同的配置中测试它,看看它们是如何相互执行的.

我可以从mysql workbench运行这个测试吗?我遇到了语法错误,并假设我不能直接在工作台中使用while循环之类的东西.

Flu*_*key 5

假设您正在运行插入查询,您可以执行以下操作:

创建您的程序:

create procedure load_user_test_data()
begin
declare v_max int default 1000;
declare v_counter int default 0;
  truncate table users;
  start transaction;
  while v_counter < v_max do
    # random query
    insert into users (username) values (CONCAT("user", floor(0 + (rand() * 65535))));
    set v_counter = v_counter + 1;
  end while;
  commit;
end
Run Code Online (Sandbox Code Playgroud)

打电话给程序 call load_user_test_data

希望这会让你朝着正确的方向前进.

  • 好.经过一个多小时的测试,我最终(在phpMyAdmin中):"_At`buid procedure load_user_test_data()begin declare v_max int default 1000;`MySQL说:`#1064 - 你的SQL语法有错误;检查与您的MySQL服务器版本相对应的手册,以便在''第3行`'附近使用正确的语法.我错过了什么? (2认同)