MySQL存储过程入门

   存储过程是一种在数据库中存储复杂程序,以便外部程序调用的一种数据库对象。存储过程是为了完成特定功能的SQL语句集,经编译创建并保存在数据库中,用户可以通过指定存储过程的名字并给定参数来调用执行。存储过程思想很简单,就是数据库SQL语言层面的代码封装与重用。存储过程在MySQL5.0版本开始支持。
   存储过程可以完成一些普通SQL语句无法完成的任务:比如需要批量插入10W条记录。
   假设这里有一个用户表:

drop table if exists xx_user;
create table xx_user(id int primary key auto_increment,name varchar(20),age int);

   我们为了构造一个10w或者100w用户表记录,用户id自动增长,name为user-i,i为变量,比如user-1,user-2,user-3等等,age可以固定为18。普通的SQL语句来实现这个功能,只能是利用批量插入insert xx_user(name,age) values ('user-1',18),('user-2',18),...,('user-100000',18);要么就是通过现有的表,然后将表记录复制过去。
  如果有了存储过程,我们可以在存储过程中,借助变量i,然后做一个while循环1000000次,然后插入记录。具体的实现过程如下所示:

mysql> delimiter //
mysql> create procedure add_user()
    -> begin
    -> declare i int default 0;
    -> set i=0;
    -> while i<1000000 do
  &nbs
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luffy5459

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值