oracle 结构设计

1 条件分之语句
  1 简单条件判断
  declare
   v_sal number(6,2);
  begin
   select sal into v_sal from emp
   where lower(ename)=lower('&&name');
   if v_sal<2000 then
    update emp set sal=v_val+200
    where lower(ename)=lower('&name');
   end if;
  end;
 2 二重条件分支
  if v_comm<>0 then
      .....
  else
     ........
  end if;
 3 多重条件分支
  IF   THEN
  ELSIF   THEN
  ELSIF   THEN
  ELSE
  END IF;
2 case 语句
  1 在case 语句中使用单一选择符进行等值比较
    declare
      v_deptno emp.deptno%type
    begin
      v_deptno:=&no;
      case v_deptno
         when 10 then
           update emp...
         when 20 then
           update ......
         else
          dems_out.put_line('不存在该部门');
      end case;
    end;
  2 在case 语句中使用多种比较条件
    declare
      v_sal emp.sal%type
      v_ename emp.ename%type
    begin
     select ename ,sal into vv_ename,v_sal
     from emp where empno=&no;
     case
       when v_sal<1000 then
         update emp set ...
       when v_sal<2000 then
     end case;
3 循环语句
  1 基本循环
   declare
    i INT:=1;
   begin
    loop
     insert into temp valuse(1);
     exit when i=10;
     i:=i+1;
    end loop;
   end;
  2 while 循环
    while i<=10 loop
      insert into tem valuse(i);
      i:=i+1;
     end loop;
  3for 循环
    for i in reverse 1..10 loop
      insert into temp values(1);
    end loop;
4 顺序控制语句
  1 goto
    goto label_name;
    loop
      ...
      goto end_loop;
    <<end loop>>
     dbms_output
   2 null 语句不会执行任何操作,并且会直接将控制传递道下一条语句
    if v_sal<3000 then
      update emp set .....
    else
      null;
    end if;

posted on 2006-08-11 10:47 康文 阅读(214) 评论(0)  编辑  收藏 所属分类: 数据库


只有注册用户登录后才能发表评论。


网站导航:
 
<2006年8月>
303112345
6789101112
13141516171819
20212223242526
272829303112
3456789

导航

统计

常用链接

留言簿(1)

随笔分类

随笔档案

文章档案

搜索

最新评论

阅读排行榜

评论排行榜