270_DBA_造数_造表
【摘要】 测试表create table single_table (id int not null auto_increment,key1 varchar(100),key2 varchar(100),key3 VARCHAR(100),key_part1 varchar(100),key_part2 varchar(100),key_part3 varchar(100),commen_field ...
测试表
create table single_table (
id int not null auto_increment,
key1 varchar(100),
key2 varchar(100),
key3 VARCHAR(100),
key_part1 varchar(100),
key_part2 varchar(100),
key_part3 varchar(100),
commen_field varchar(100),
PRIMARY KEY(id), key key1(key1), UNIQUE key uk_key2(key2), key idx_key3(key3), key idx_key_part(key_part1, key_part2, key_part3)
)
造数
delimiter $$
create function rand_string(n int) returns varchar(255)
begin
declare chars_str varchar(100) default 'abcdefghijklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ';
declare return_str varchar(255) default '';
declare i int default 0;
while i<n do
set return_str =concat(return_str,substring(chars_str,floor(1+rand()*52),1));
set i=i+1;
end while;
return return_str;
end
$$
select rand_string(20)
delimiter $$
create function rand_num() returns int(5)
begin
declare i int default 0;
set i = floor(100+rand()*10);
return i;
end
$$
select rand_num()
SELECT UUID()
插入
delimiter //
drop function if exists insert_single_table//
create function insert_single_table(in_len int(11)) returns int(11)
begin
declare cur_len int(11) default 0;
while cur_len < in_len do
insert into single_table(key1,key2,key3,key_part1,key_part2,key_part3,commen_field) values(rand_string(10),uuid(),rand_string(15),rand_string(10),rand_string(10),rand_string(10),rand_string(20));
set cur_len = cur_len + 1;
end while;
return cur_len;
end
//
delimiter ;
select insert_single_table(100000);
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)