zoukankan      html  css  js  c++  java
  • MYSQL中创建存储过程实现向表中循环插入数据

    首先在test数据库中先创建一个表test:

    CREATE TABLE test(
    ID INT PRIMARY KEY AUTO_INCREMENT ,
    test_name VARCHAR(20),
    test_num INT);

    现在,我们来创建一个存储过程,实现向表里循环插入数据;

    delimiter $                                                           /*(意思是mysql语句的结尾换成以$结束,mysql默认是;结束)*/

    create procedure pro1(in n int)                               /*创建一个名为pro1的存储过程,调用存储过程时,可以通过输入参数n来指定循环的次数*/

    begin                                                                 /*开始*/

    declare num001 , num002 int;                                /*定义num001和num002的数据类型为int*/

    set num001 = 1 , num002 = 10;                             /*设置num001=1,num002=10*/

    while n - num001 >= 0 do                                     /*当num001小于等于n时执行下面的操作*/

    insert into test(test_name,test_num)

    values(concat("zhangsan" , num001) , num002);        /*在test表中插入数据test_name=zhangsan+num001,test_num=num002,contat意为将张三和num001连起来*/

    set num001=num001+1,num002=num002*2;             /*设置num001=num001+1,num002=num002*2*/

    end while;                                                          /*当num>100时,不再执行插入操作循环结束*/

    end $                                                                /* 存储过程结束*/

    delimiter ;                                                          /*(mysql语句的结尾换成以;结束)*/

    执行存储过程:

    call pro1(100) ;

    执行成功后,数据如下所示:

     

     
    如果想查询test数据库存在哪些存储过程,则执行:
    select * from mysql.proc where db = 'test' and type = 'procedure'  ;
    结果如下图所示:
     
  • 相关阅读:
    CSS3新子代选择器
    css3新选择
    procixx和最近调试的坑
    procixx地址
    从零开始之uboot、移植uboot2017.01(二、从入口分析流程)
    从零开始之uboot、移植uboot2017.01(一、移植前的准备)
    四、移植 JZ2440 开发板
    三、编译第一步 make xxx_defconfig——Makefile.build 脚本
    二、编译第一步 make xxx_defconfig
    一、配置介绍
  • 原文地址:https://www.cnblogs.com/wangjikun/p/5685489.html
Copyright © 2011-2022 走看看