千家信息网

存储过程+函数造数据myql

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,往身份信息表插入N条记录,N=P*Q,p:每条insert语句插入的记录数,由临时表的数量决定q:循环次数,存储过程的入参-- 身份信息表drop table if exists t_identity
千家信息网最后更新 2026年11月01日存储过程+函数造数据myql

往身份信息表插入N条记录,N=P*Q,
p:每条insert语句插入的记录数,由临时表的数量决定
q:循环次数,存储过程的入参

-- 身份信息表
drop table if exists t_identity_info;
create table t_identity_info (
id int(11) not null auto_increment comment '主键id',
real_name varchar(20) default null comment '姓名',
id_card varchar(18) not null comment '×××号',
create_time varchar(19) not null comment '创建时间',
primary key (id),
key index_id_card (id_card)
) engine=innodb auto_increment=1 default charset=utf8 comment='用户信息表';

-- 删除
drop function if EXISTS rand_xing_ming ;

-- 创建函数
create function rand_xing_ming() returns varchar(20)
begin
declare xing_string varchar(1000) default '赵钱孙李周吴郑王冯陈';
declare ming_string varchar(1000) default '天地玄黄宇宙洪荒日月';
declare xing_ming varchar(20) default '' ;

declare xing_index int;
declare ming_index int;
declare temp_xing varchar(10);
declare temp_ming varchar(10);

set xing_index = round(rand()10000) mod (char_length(xing_string)-1);
set ming_index = (round(rand()
10000)) mod (char_length(ming_string)-1);
set temp_xing = substring(xing_string,xing_index,1);
set temp_ming = substring(ming_string,ming_index,1);
set xing_ming = concat(temp_xing,temp_ming);
return xing_ming;
end
;

-- 测试
select rand_xing_ming();

-- 临时表,用来控制insert的条数
drop table if exists t_temp;
create table t_temp (
id int(11) not null auto_increment comment '主键id',
primary key (id)
) engine=innodb auto_increment=1 default charset=utf8 comment='临时表';

-- 插入100条数据
insert into t_temp values
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),(),
(),(),(),(),(),(),(),(),(),();

-- 存储过程
drop procedure if exists insert_data;

delimiter ;;
create procedure insert_data(IN data_count int)
begin
declare i int;
set i = 0;
while i < data_count do
set i = i +1;

insert into t_identity_info (real_name,id_card,create_time)
select rand_xing_ming(),'abc',now() from t_temp ;

end while;
end
;;
DELIMITER ;

-- 调用存储过程 插入10W条记录
set autocommit= 0;
call insert_data(1000);
commit;

-- 验证
select count(1) from t_identity_info;

过程 存储 信息 身份 函数 数据 天地 姓名 宇宙 数量 日月 时间 次数 洪荒 用户 语句 玄黄 循环 控制 测试 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网是第几次科技革命的成果 重生之互联网科技帝国 金诺互联网科技 百单互联网科技有限公司 互联网科技公司有哪些 海南购全球互联网科技 广西拼得多互联网科技有限公司 汉立互联网科技有限公司联系电话 剑昆互联网络科技有限公司临桂 顶级互联网科技成果有哪些 栖莱科技互联网股份有限公司 和信科技工业互联网 晓花互联网科技有限公司网址 互联网5g黑科技有哪些 互联网时代的科技公司 互联网方面的科技前沿 厦门江牛科技互联网 兰石爱特工业互联网科技分公司 广州三三互联网科技有限公司 陕西彩京云互联网科技有限公司 互联网科技企业 壹账通互联网科技 互联网 新科技 互联网科技股有哪些 丰台科技园 互联网公司 互联网科技博主是什么意思 互联网风格科技公司名称 吉林省码上互联网科技电话 东风日产互联网科技公司叫什么 伍佰万互联网科技是干嘛的
0