T-sql For in loop 变量循环语句

For 变量 in   循环开始的值 .. 循环结束的值(小于该值)

Loop

--做处理的语句

End Loop

例子:

 ---循环找出供应商    

for i in 0 .. vendor_Total loop   -- i 和 vendor_Total 在存储过程头部定义,vendor_Total 在循环之前已经赋值

            

              if i = vendor_Total then

                str_vendor  := substr(str_vendors, 0, length(str_vendors));

                str_VASSIGN := substr(str_VASSIGNs, 0, length(str_VASSIGNs));

              else

                vendor_index  := instr(str_vendors, ':');

                vassign_index := instr(str_VASSIGNs, ':');

                str_vendor    := substr(str_vendors, 0, vendor_index - 1);

                str_VASSIGN   := substr(str_VASSIGNs, 0, vassign_index - 1);

              end if;

            

              ---start插入数据--

            

              select SEQ_VASSIGNLINEID.nextval into str_LINEID from dual;

              insert into VASSIGNFORMDETAIL

                (ASSIGNSCALE,

                 VENDORCODE,

                 ASSIGNCODE,

                 ASSIGNPERCENT,

                 CREATEUSER,

                 CREATEDATE,

                 CREATETIME,

                 FORMID,

                 FORMNO,

                 LINEID,

                 REMARK)

              values

                (to_number(str_VASSIGN),

                 str_vendor,

                 str_ASSIGNCODE,

                 to_number(str_VASSIGN) * 10,

                 createuser_in,

                 to_number(to_char(sysdate, 'yyyymmdd')),

                 to_number(to_char(sysdate, 'hh24MMSS')),

                 str_vassignformid,

                 str_ASSIGNCODE,

                 str_LINEID,

                 to_char(sysdate) || '批量导入');

            

              ---end 插入数据--           

              str_vendors  := substr(str_vendors,

                                     vendor_index + 1,

                                     length(str_vendors) - vendor_index);

              str_VASSIGNs := substr(str_VASSIGNs,

                                     vassign_index + 1,

                                     length(str_VASSIGNs) - vassign_index);

            end loop;

转载于:https://www.cnblogs.com/windback/archive/2011/10/08/2202135.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值