create table t1(id int auto_increment primary key, test varchar(10000));
create table t2(id int auto_increment primary key, test text(10000));
drop procedure if exists data_init_test1;
delimiter $$
create procedure data_init_test1()
begin
DECLARE start_flag int;
DECLARE date_flag date;
DECLARE list_length int;
DECLARE start_flag2 int;
DECLARE text_val varchar(1000);
set start_flag = 0;
set date_flag = CURDATE();
set list_length = 10000;
set start_flag2 = 0;
set text_val = 'test_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_testtest_test';
while start_flag < list_length DO
insert into t2(test) values(text_val);
set start_flag = start_flag + 1;
end while;
end$$
delimiter ;
call data_init_test1();
测试varchar
插入1w行数据到t1表
测试text
插入1w行数据到t2表
数据量少时 update效率也相差无几.
主要的存储的空间区别.