找回密码
 立即注册
查看: 80|回复: 0

Oracle涓or寰娇ㄦ娉

[复制链接]

725

主题

0

回帖

725

积分

00话痨hs000

积分
725
发表于 2023-8-26 20:46:39 | 显示全部楼层 |阅读模式
Oracle for in loop 寰幆鐨勪竴浜涘疄渚,浠ヤ綔瀛︿範鍜屽姞寮轰娇鐢ㄧ啛缁冨害鍙婂満鏅簲鐢.
涓浜涙妧宸

for 璇彞鍚庨潰鐨 loop end loop 鍙互绫绘瘮鎴 c#/java 绛夌紪绋嬭瑷 for 璇彞鍚庨潰鐨勮鍙ュ潡绗﹀彿(鑺辨嫭鍙穥}), 浠ヤ究鐞嗚В鍜屼娇鐢.
涓浜涘疄渚

寰幆杈撳嚭鏁板

-- 寰幆杈撳嚭鏁板
begin
  for i in 1 .. 100 loop
    sys.dbms_output.put_line(i);
  end loop;
end;寰幆绱姞

-- 寰幆绱姞
declare
  var_sum number := 0;
begin
  for i in 1 .. 100 loop
    var_sum := var_sum + i;
  end loop;
  sys.dbms_output.put_line(var_sum); -- 5050
end;鎵归噺鎻掑叆

-- 鎵归噺鎻掑叆
begin
  for i in 1 .. 100 loop
    -- todo: insert into some_table(field1, field2, ..., fieldN) values(valie1, value2, ..., valueN);
    sys.dbms_output.put_line('insert: ' || to_char(i));
  end loop;
  commit;
  sys.dbms_output.put_line('澶氭insert,缁熶竴commit');
end;鎵归噺鏇存柊

-- 鎵归噺鏇存柊
begin
  for i in 1 .. 100 loop
    -- todo: update some_table set fieldN = valueN where fieldN = valueN;
    sys.dbms_output.put_line('update: ' || to_char(i));
  end loop;
  commit;
  sys.dbms_output.put_line('澶氭update,缁熶竴commit');
end;寰幆杈撳嚭鐢ㄦ埛琛ㄤ俊鎭

-- 鏌ヨ浣犺兘绠$悊鐨勬墍鏈夌敤鎴蜂俊鎭
select user_id, username, created from all_users;

-- 寰幆杈撳嚭鐢ㄦ埛琛ㄤ俊鎭
begin
  for cur_row in (select user_id, username, created from all_users) loop
    sys.dbms_output.put_line(cur_row.username);
  end loop;
end;
-- 褰撳惊鐜璞℃槸姣旇緝闀夸覆鐨凷QL鏃,寤鸿鎻愬彇娓告爣,鏂逛究鍚庣画鏌ョ湅鍜岀淮鎶寰幆杈撳嚭鐢ㄦ埛琛ㄤ俊鎭(娓告爣鎻愬彇)

-- 寰幆杈撳嚭鐢ㄦ埛琛ㄤ俊鎭(娓告爣鎻愬彇)
declare
  -- 鎻愬彇娓告爣瀵硅薄,鏂逛究鍗曠嫭缁存姢SQL
  cursor cursor_all_users is
    select user_id, username, created from all_users;
  -- 娓告爣瀛愰」(鏇村鐨勬椂鍊,琛ㄦ槸鍔ㄦ佽〃,鎵浠ヨ繖鍙ュ0鏄庝篃鍙互鐪佺暐)
  -- cursor_user all_users%rowtype;
begin
  for cursor_user in cursor_all_users loop
    dbms_output.put_line(cursor_user.username);
  end loop;
end;浠ヤ笂灏辨槸杩欑瘒鏂囩珷鐨勫叏閮ㄥ唴瀹逛簡锛屽笇鏈涙湰鏂囩殑鍐呭瀵瑰ぇ瀹剁殑瀛︿範鎴栬呭伐浣滃叿鏈変竴瀹氱殑鍙傝冨涔犱环鍊硷紝璋㈣阿澶у瀵逛腑鍥界孩瀹㈣仈鐩熺殑鏀寔銆傚鏋滀綘鎯充簡瑙f洿澶氱浉鍏冲唴瀹硅鏌ョ湅涓嬮潰鐩稿叧閾炬帴
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|翻墙党

GMT+8, 2026-10-2 18:55 , Processed in 0.067424 second(s), 23 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表