#生成随机字符串函数,在存储过程中调用
delimiter $$
create
function
rand_string(n
int
)
returns
varchar
(255)
begin
declare
chars_str
varchar
(100)
default
'abcdefghigklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
;
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
$$
delimiter ;
#生成随机数字,在存储过程中调用
delimiter $$
create
function
rand_num()
returns
int
(5)
begin
declare
i
int
default
0;
set
i = floor(10+rand()*500);
return
i;
end
$$
delimiter ;
#定义存储过程
delimiter $$
create
procedure
insert_emp(start
int
(10),max_num
int
(10))
begin
declare
i
int
default
0;
set
autocommit = 0;
repeat
set
i = i+1;
insert
into
emp
values
((start+i),rand_string(6),
'SALESMAN'
,0001,2000,400,rand_num(),curdate());
until i = max_num
end
repeat;
end
$$