精华内容
下载资源
问答
  • 存储过程for循环
    千次阅读
    2019-02-11 17:03:17

    begin

         for i in 1 .. 1000 loop

                update t1 set name='AAAA' where id = 1;

                 commit;

          end loop;

    end;

    /

    更多相关内容
  • 宣告@Iterator INTSET @Iterator = 0WHILE(@Iterator
  • 如下存储过程使用游标遍历所有数据: CREATE OR REPLACE PROCEDURE "CFFTEST"."SELECT_STUDENT"("id" IN INT) AS myId int; myName varchar(50); cursor myCursor is select id, name from cfftest.student; ...
  • 主要介绍了MySQL实现创建存储过程循环添加记录的方法,涉及基本的mysql存储过程创建、调用相关操作技巧,需要的朋友可以参考下
  • 代码为一个小实例介绍oracle存储过程for循环的使用和if的使用,在存储过程中拼接JSON还回给调用者create or replace procedure p_yourname(p_xxa in varchar2, --参数一为输入参数p_xx b in varchar2, --参数二为...

    代码为一个小实例介绍oracle存储过程的for循环的使用和if的使用,在存储过程中拼接JSON还回给调用者

    create or replace procedure p_yourname(

    p_xxa in varchar2, --参数一为输入参数

    p_xx b in varchar2, --参数二为输入参数

    p_xxc inout varchar2, --参数三为输入输出参数

    p_result out varchar2 --参数四为输出参数

    )

    /***********

    Tom.Cai 2013-07-23

    功能XXX

    ************/

    is

    t_temp varchar2(10);

    v_num tablename%ROWTYPE; --表名称加上%ROWTYPE

    v_code number :=0;

    begin

    -- do something yourself

    t_temp :='{'||'jsonname'||

    for v_num in ( select aa,bb from table where faa = p_xxa)

    loop

    t_temp := t_temp ||'['||aa||':'|| v_num .aa||','||aa||':'||v_num .bb||']'; --拼接

    exit; --退出循环

    end if;

    end loop;

    t_temp:=t_temp ||'}';

    if(t_temp.length>20) then --此处判断仅为demo,没有实际意义

    p_result := t_temp;

    else

    return;

    end if;

    exception

    when others then

    --do something

    end p_route;

    展开全文
  • mysql存储过程for 循环示例

    万次阅读 2019-06-26 16:50:07
    DELIMITER // 设置//为结束符,否则命令行中的;会与默认的;冲突 create procedure pro10() begin declare i int default 0; ... insert into t2 values(i... // 存储过程结束 DELIMITER ; 重新设置回;作为分割符

    DELIMITER //      设置//为结束符,否则命令行中的;会与默认的;冲突
    create procedure pro10()
    begin
    declare i int default 0;
    while i<100000 do
        insert into t2 values(i,'aaaaaaaaaaaaaaaaaaaa');
        set i = i + 1;
    end while;
    end; //      存储过程结束
    DELIMITER ;   重新设置回;作为分割符

    展开全文
  • 存储过程——FOR循环

    千次阅读 2022-04-18 15:03:04
    FOR循环 运行预先确定的次数。 简单循环 简单循环在显式结束之前会一直运行。简单循环的语法如下: LOOP statements END LOOP; 要结束简单循环,可以使用EXIT或EXIT WHEN语句。EXIT语句立即结束循环,EXIT WHEN...

    循环可以对语句运行零次或多次。在PL/SQL中有3种类型的循环:
    简单循环 直到显式结束循环之前一直运行。
    WHILE循环 直到某个特定条件出现之前一直运行。
    FOR循环 运行预先确定的次数。
    简单循环
    简单循环在显式结束之前会一直运行。简单循环的语法如下:

    LOOP
    	statements
    END LOOP;
    

    要结束简单循环,可以使用EXIT或EXIT WHEN语句。EXIT语句立即结束循环,EXIT WHEN语句在指定条件出现时结束循环。
    变量v_counter在循环开始之前被初始化为0,每次循环给v_counter加1.EXIT WHEN语句表示,当v_counter等于5时循环结束。

    v_counter := 0;
    LOOP
    	v_counter := v_counter + 1;
    	EXIT WHEN v_counter = 5;
    END LOOP;
    

    EXIT WHEN 语句可以出现在循环代码中的任何位置。
    1.4.2 WHILE循环
    WHILE循环在某个特定条件出现之前一直运行。WHILE循环的语法如下:

    WHILE condition LOOP
    	statements
    END LOOP;
    

    当v_counter变量小于6时WHILE循环会一直执行:

    v_counter := 0;
    WHILE v_counter < 6 LOOP
    	v_counter := v_counter + 1;
    END LOOP;
    

    FOR循环
    FOR循环会运行预先确定的次数,可通过给循环变量指定下限和上限来确定循环运行的次数,然后,循环变量在每次循环中递增(或在反向循环中递减)。FOR循环的语法如下:

    FOR loop_variable IN [REVERSE] lower_bound .. upper_bound LOOP
    	statements
    END LOOP;
    

    loop_variable指定循环变量。可以将已经存在的变量用作循环变量,也可以让循环语句自己创建循环变量。循环变量的值在每一次循环中都增加1。
    REVERSE指定在每一次循环中循环变量都会递减。循环变量先被初始化为其上限,然后在每一次循环中递减1,直至达到其下限。下限依然要在上限之前定义。
    lower_bound指定循环的下限。在没有使用REVERSE的情况下,循环变量初始化为这个下限值。
    upper_bound指定循环的上限。如果使用REVERSE,循环变量初始化为这个下限。
    举个栗子

    FOR v_counter2 IN 1..5 LOOP
    	DBMS_OUTPUT.PUT_LINE(v_counter2);
    END LOOP; 
    

    下面这个栗子使用了REVERSE

    FOR v_counter2 IN REVERSE 1..5 LOOP
    	DBMS_OUTPUT.PUT_LINE(v_counter2);
    END LOOP; 
    

    for循环 自然数求和1…100

    declare 
    v_a   number :=0;
    v_sum number :=0;
    begin
       for i in 1..100   loop
           v_a := v_a +1;--每循环一次加一
           v_sum := v_sum + v_a;
           dbms_output.put_line(v_a ||' ' || v_sum);
        end loop;
        dbms_output.put_line('自然数求和1..100的结果是:' || v_sum);
      end;
    

    简化

    declare 
    v_sum number :=0;
    begin
       for i in 1..100   loop
           v_sum := v_sum + i;
           dbms_output.put_line(i);
        end loop;
        dbms_output.put_line('自然数求和1..100的结果是:' || v_sum);
      end;
    
    展开全文
  • mysql存储过程 for循环生成数据
  • mysql存储过程循环

    2016-12-15 15:20:14
    一个简单易理解的mysql存储过程 循环表操作 使用游标
  • 那么通过如下代码,看一下在for循环中,不同的字符串拼接方式,到底哪种效率最高?  package com.test.stringjoin; import org.apache.commons.lang3.StringUtils; public class Test { public static void main...
  • 循环过程配合,方便来生成测试数据: 例: --创建表 create table t_test ( test_id varchar2(100), test_name varchar2(100) ); --查询 select * from t_test; truncate table t_test; --声明过程--配合循环插入测试...
  • Oracle存储过程中的for循环

    万次阅读 2019-06-18 21:55:00
    for循环 ** 简单for循环 ** declare cursor cur is select * from test aw_row test%rowtype; begin for tmp in cur loop insert into test1(id,ishavecommit,createtime)values(tmp.id,tmp.ishavecom....
  • 项目中遇到测试,需要造4500数据,而且需要分部门和日期,一个部门一天30条数据,剩下的铺垫数据可以一个部门一天100w左右数据,这里,每次变换部门,日期,需要操作至少300次,想到用存储过程写一个函数进行首先,...
  • 本次实验的目的在于实现mysql中自动插入学生成绩信息,即给每个学生自动插入1~6号课程的成绩,属性如下:学生学号(i):1~23课程号(j):1~6成绩:用rand()函数来实现自动填成绩此功能在java中用两个for循环嵌套即可,...
  • create or replace ...--while循环 while v_cs<3 loop insert into TABLESPACETEST select * from TABLESPACETEST; commit; v_cs:=v_cs+1; end loop; --简单循环 /**loop v_cs:=v_cs+1; insert into TABLESP.
  • SqlServer循环执行存储过程

    千次阅读 2021-07-15 19:24:13
    begin --申明变量 declare @blh char(10) ...for (select blh, zycs from zy_brzl)--循环条件 --打开游标-- open order_cursor --开始循环游标变量-- fetch next from order_cursor into @blh, @zycs while @...
  • create or replace procedure BackUpData(taskCode varchar2) is VCOUNT1 INT; VCOUNT2 INT; BKNAME VARCHAR(13); SQLLOOP VARCHAR2(512);... for tableName in (select distinct tabname from T0
  • mysql for循环存储过程

    2018-08-22 17:54:00
    DROP PROCEDURE IF EXISTS test_insert; DELIMITER ;; CREATE PROCEDURE test_insert () BEGIN DECLARE i int; set i=14; WHILE i<... insert into student(name,age,nianji,phone) val...
  • 记录exit和return的用法exit用来跳出循环loopIF...return跳出存储过程loopIF V_KBP IS NULL THENreturn;END IF;end loop;跳出loop 一次循环oracle 11g已提供continue;oracle 10g及以下,使用goto来替代,例如SQL> s...
  • Oracle存储过程中loop、for循环的用法

    千次阅读 2020-11-19 10:30:08
    创建存储过程: create or replace procedure PRO_LOOP_EMP is --声明游标 v_emp emp%rowtype; --让游标变量c_emps指向一个动态select查询的结果集 cursor c_emps is select * from emp where rownum <= 10;...
  • 代码如下:CREAT PROCEDURE tester ASBEGIN SET NOCOUNT ON; DECLARE @userId varchar(50) DECLARE @count int SET @count = 0 SELECT @count = count(*) FROM UserService_User WHERE Account like ‘1%’ ...
  • Oracle存储过程循环语法实例分析

    千次阅读 2021-05-03 02:43:32
    本文实例讲述了Oracle存储过程循环语法。分享给大家供大家参考,具体如下:1、简单循环语法loopstatements;end loop;例子:counter := 0;loopcounter := counter + 1;exit when counter = 5;end loop;备注:exit语句...
  • 下面是工作中使用到的一个mysql嵌套循环存储过程,因为写的比较少,开始写花费了一点时间,特此记录一下DELIMITER //CREATE PROCEDURE handleHisNewCommentData()BEGINDECLARE done INT DEFAULT FALSE;DECLARE topId...
  • 在MySQL存储过程的语句中有三个标准的循环方式:WHILE循环,LOOP循环以及REPEAT循环。还有一种非标准的循环方式:GOTO,不过这种循环方式最好别用,很容易引起程序的混乱,在这里就不错具体介绍了。这几个循环语句的...
  • oracle存储过程循环怎么写

    千次阅读 2021-04-30 10:01:11
    oracle存储过程循环怎么写mip版关注:173答案:2悬赏:40解决时间 2021-01-18 03:33已解决2021-01-18 00:13oracle存储过程循环怎么写最佳答案2021-01-18 01:04Oracle中有三种循环(For、While、Loop):1、loop循环:...
  • 使用for loop向表中批量插入数据,推荐使用plsql执行,Dbvisualizer语句执行会出错
  • BEGIN -- 声明变量 DECLARE v_addtime_begin varchar(13); DECLARE v_addtime_end ... DECLARE c_borrow CURSOR FOR SELECT ID from rocky_borrow WHERE BORROWTYPE = 2 AND PUBLISH_TIME >= UNIX_TIMESTAMP('2014-

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 400,928
精华内容 160,371
关键字:

存储过程for循环