利用存储过程和函数进行批量数据的添加

这篇博客介绍了如何利用MySQL的存储过程和函数来批量插入数据,包括创建存储过程和函数的步骤,并展示了如何调用这些过程以快速生成大量测试数据。同时,博主讨论了数据查询优化,特别是通过索引来提升查询效率。
摘要由CSDN通过智能技术生成

今天利用闲暇时间想学习一些sql 的优化方法,我老早就讲 表都建好了,但是数据是一个问题呀。我需要大量的数据,我想到了可以通过硬编码的格式进行插入,但是我又不想写代码。我就想到另一个方案:存储过程和函数

由于以前我也很少写这些东西,今天我就认证的研究一下存储过程和函数的神奇地方。 吐槽完了!我们开始上枪开干....

【备注:首先检查下我们的数据库是否支持函数】

若是你的不支持可以执行

set global log_bin_trust_function_creators=1;

一。首先创建三张表 

学生表 student

科目表  course

学生成绩表 sc

这里我就不展示了

二。编写函数

(1).编写一个随机生成字符串的函数:

delimiter $$
 create function rand_string(n int) returns varchar(255)
 begin
   declare chars_str varchar(100) default 'qwertyuiopasdfghjklzxcvbnm';
   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 $$

(2.)随机生成编号的函数

delimiter $$
 create function rand_num() returns int(5)
 begin
   declare i int default 0;
   set i=floor(rand()*10);
 return i;
 end $$</
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值