drop PROCEDURE test_insert;
DELIMITER;;
CREATE PROCEDURE test_insert()
begin
declare num int;
set num=0;
while num < 10000 do
insert into test_mysql(test_mysql.student_id,test_mysql.student_name) values(concat(num),concat('赵大宝', num,'号'));
set num=num+1;
end while;
END;;
call test_insert();
关闭自动提交会快很多
MySQL默认是打开了自动提交的。关闭自动提交有以下办法
1. Session级别:使用 START TRANSACTION 或者 BEGIN 来开始一个事务,使用ROLLBACK/COMMIT来结束一个事务。
2. Session级别:SET autocommit=0关闭当前session的自动提交。
3. 全局级别:SET GLOBAL autocommit=0关闭全局的自动提交。
drop PROCEDURE test_insert;
DELIMITER ;;
set autocommit=0;
CREATE PROCEDURE test_insert ()
begin
declare num int;
set num=0;
while num < 100000 do
insert into test_mysql(test_mysql.student_id,test_mysql.student_name) values(concat(num),concat('赵大宝', num,'号'));
set num=num+1;
end while;
commit;
END;;
call test_insert();
附上删除表数据的几种方法
删除表内数据,用 delete。格式为:
delete from 表名 where 删除条件;
清除表内数据,保存表结构,用 truncate。格式为:
truncate table 表名;
删除表用 drop,就是啥都没了。格式为:
drop table 表名;
当你不再需要该表时, 用 drop;
当你仍要保留该表,但要删除所有记录时, 用 truncate;
当你要删除部分记录时, 用 delete。