zoukankan      html  css  js  c++  java
  • Oracle 控制语句

    set serverout on; ----这个只能在SQL PLUS里面使用,意思是在窗口里显示服务器输出信息。
    declare n number:=1; ---定义一个变量(当然可以连续定义多个变量)
            v varchar2(20):='百零';
            n2 number:=5;
    begin
      dbms_output.put_line('这是'||n||v||n2); ----随便在什么地方,只要是BEGIN和END之间,就可以使用DBMS_OUTPUT.PUT_LINE(output)
    end;
    
    ---- if          then        end if
    set serveroutput on;
    declare scount number;
    begin
      select count(*) into scount from student where score>80; ----into 赋值
      if scount>0 then 
        dbms_output.put_line(''||scount||'个学生成绩大于80分');
      end if;
    end;
    
    
    ---- case when  then
    set serveroutput on;
    declare scount number;
    begin
      select count(*) into scount from student where score>80;
      case scount
        when 0 then  dbms_output.put_line('有0个学生成绩大于80分');
        when 1 then  dbms_output.put_line('有1个学生成绩大于80分');
        when 2 then  dbms_output.put_line('有2个学生成绩大于80分');
        when 3 then  dbms_output.put_line('有3个学生成绩大于80分');
        when 4 then  dbms_output.put_line('有4个学生成绩大于80分');
      end case;
    end;
    
    
    
    ---- loop循环(无条件,所以要ziji定义退出的条件)
    set serveroutput on;
    declare siid number:=1;
            sname varchar2(20);
            sscore varchar2(20);   
    begin
      loop
        if(siid>4) then
          exit;
        end if;
        select s.name,s.score into sname,sscore from student s where s.id=siid;
        dbms_output.put_line(siid||'号的成绩和名字是:'||sscore||sname);
        siid:=siid+1;
      end loop;
    end;
    
    
    ---- while循环
    set serveroutput on;
    declare siid number:=1;
            sname varchar2(20);
            sscore varchar2(20);   
    begin
       while(siid<5) loop
        select s.name,s.score into sname,sscore from student s where s.id=siid;
        dbms_output.put_line(siid||'号的成绩和名字是:'||sscore||sname);
        siid:=siid+1;
      end loop;
    end;
    
    
    ----for 循环 (参数用..链接)
    set serveroutput on;
    declare sname varchar2(20);
            sscore varchar2(20);   
    begin
       for s_id in 1..4 loop
        select s.name,s.score into sname,sscore from student s where s.id=s_id;
        dbms_output.put_line(s_id||'号的成绩和名字是:'||sscore||sname);
      end loop;
    end;
  • 相关阅读:
    Webpack4 入门手册(共 18 章)下
    npm(Node Package Manager)
    C#(99):C# 5.0 新特性(.NET Framework 4.5 与 Visual Studio 2012 )
    C#(99):四、Async和Await使异步编程更简单
    C#(99):三、.NET 4.0基于任务的异步模式(TAP),推荐使用
    C#(99):二、.NET 2.0基于事件的异步编程模式(EAP)
    C#(99):一、.NET 1.0 异步编程模型(APM)
    VS中的代码段功能
    VS在C#类文件头部添加文件注释的方法
    C#(99):C# 语言历史版本特性(C# 1.0到C# 8.0汇总)
  • 原文地址:https://www.cnblogs.com/AnswerTheQuestion/p/6986792.html
Copyright © 2011-2022 走看看