• 学习mysql存储过程,并且用到游标


    定义一个存储过程,用到游标,从一个表中取值,插入到另外一个表中。
    drop procedure if exists search_test;
    create procedure search_test(in id int,out out_min_id varchar(200))
    begin
    declare finished boolean default 0 ;
    declare tmp varchar(200) ;
    declare s_test cursor for select r_id from A where n_code=id;  //定义游标
    declare continue handler for sqlstate '02000' set finished=1;   //定义结束标志
    open s_test;           //打开游标
    repeat             //循环
    FETCH s_test into tmp;
    if not finished then
    set out_min_id=tmp;
    insert into B(n_code) values(out_min_id);
    end if;
    until finished end repeat;
    close s_test;         //关闭游标
    select out_min_id;
    end

    mysql打印变量值用select 变量名的方式;

    用LOOP实现循环方式

    drop procedure if exists search_test;
    create procedure search_test(in id int,out out_min_id varchar(200))

    begin

    declare finished boolean default 0 ;
    declare tmp varchar(200) ;
    declare s_test cursor for select rf_id from urm_ipqam_frequency where network_code=id;
    declare continue handler for sqlstate '02000' set finished=1;
    open s_test;
    myloop:LOOP
    FETCH s_test into tmp;
    if finished then
    leave myloop;
    end if;
    set out_min_id=tmp;
    insert into urm_network_area_his(network_code) values(out_min_id);
    end loop myloop;
    close s_test;
    select out_min_id;
    end

  • 相关阅读:
    android_firewall or Droidwall http://code.google.com/p/droidwall/
    CMDProcessorLibrary
    Pimp_my_Z1
    HoloGraphLibrary
    程序猿正本清源式进化的意义
    UnsatisfiedLinkError: No implementation found for , AndroidStudio使用*.so
    HUNNU-10307-最优分解问题
    Spring声明式事务
    【献给CWNU的师弟】Web篇
    迪科斯彻算法总结
  • 原文地址:https://www.cnblogs.com/penglei2011/p/3725741.html
Copyright © 2020-2023  润新知