oracle学习笔记之三(函数:Pl/sql)

来源:互联网 发布:淘宝助手图片搬家失败 编辑:程序博客网 时间:2024/05/16 19:28

函数:

Pl/sql:  

基本语法

 

Sql代码  收藏代码
  1. set ServerOutput on;[定义输出]  
  2.  declare[定义]  
  3.    bookName varchar2(40);  
  4.   begin[开始]  
  5.   bookName :=[给变量赋值]'gouchao';  
  6.   dbms_output[输出].put_line(bookName);  
  7.   end[结束];  
  8.    /  

 

条件语句 if

 

Sql代码  收藏代码
  1. set ServerOutput on ;  
  2.   
  3. declare   
  4.   
  5.   num integer :=-11 ;  
  6.   
  7. begin  
  8.   
  9.   if num < 0  then  
  10.   
  11.      dbms_output.put_line('负数');  
  12.   
  13.   elsif num > 0 then  
  14.   
  15.      dbms_output.put_line('正数');  
  16.   
  17.   else  
  18.   
  19.     dbms_output.put_line('0');  
  20.   
  21.   end if  ;  
  22.   
  23.  end;  
  24.   
  25. /  

 

分支语句case:

 

Sql代码  收藏代码
  1. set ServerOutput on ;  
  2.   
  3. declare   
  4.   
  5.   num integer :=3 ;  
  6.   
  7.   result varchar2(30);  
  8.   
  9. begin  
  10.   
  11.   result:= case num  
  12.   
  13.   when 1 then '星期一'  
  14.   
  15.   when 2 then '星期二'  
  16.   
  17.   when 3 then '星期三'  
  18.   
  19.   when 4 then '星期四'  
  20.   
  21.   when 5 then '星期五'  
  22.   
  23.   when 6 then '星期六'  
  24.   
  25.   when 7 then '星期天'  
  26.   
  27.   else '数据越界'  
  28.   
  29.   end;  
  30.   
  31.   dbms_output.put_line(result);  
  32.   
  33. end;  
  34.   
  35. /  

  

循环语句loop...next...end

循环语句loop...exitwhen ... end loop

 

Sql代码  收藏代码
  1. set ServerOutput on;  
  2.   
  3. declare   
  4.   
  5.  num integer :=10;  
  6.   
  7. begin  
  8.   
  9.  loop  
  10.   
  11.  dbms_output.put_line(num);  
  12.   
  13.  num :=  num -1;  
  14.   
  15.  exit when num <= 0;  
  16.   
  17.  end loop;  
  18.   
  19. end ;  
  20.   
  21. /  

 

循环语句 while...loop...end loop

 

 

Sql代码  收藏代码
  1. set ServerOutput on;  
  2.   
  3. declare   
  4.   
  5.  num integer :=10;  
  6.   
  7. begin  
  8.   
  9.  while(num > 0)  
  10.   
  11.  loop  
  12.   
  13.  dbms_output.put_line(num);  
  14.   
  15.  num :=  num -1;  
  16.   
  17.  end loop;  
  18.   
  19. end ;  
  20.   
  21. /  

 

 

 

循环语句for...in...loop...end loop

 

 

Sql代码  收藏代码
  1. set ServerOutput on;  
  2.   
  3. declare   
  4.   
  5.  i integer ;  
  6.   
  7. begin  
  8.   
  9.  for i in 1..10  
  10.   
  11.  loop  
  12.   
  13.   dbms_output.put_line(i);  
  14.   
  15.  end loop;  
  16.   
  17. end ;  
  18.   
  19. /  
  20.   
  21. <pre name="code" class="sql">set ServerOutput on;  
  22.   
  23. declare   
  24.   
  25.  i integer ;  
  26.   
  27. begin  
  28.   
  29.  for i in 1..10  
  30.   
  31.  loop  
  32.   
  33.   if(i=5) then   
  34.   
  35.   exit;  
  36.   
  37.   end if;  
  38.   
  39.   dbms_output.put_line(i);  
  40.   
  41.  end loop;  
  42.   
  43. end ;  
  44.   
  45. /  
  46.   
  47. </pre>