--声明一个变量,并给它赋值
declare 

v_bonus number(8);

begin

select id*6 into v_bonus from A where Id=5;

DBMS_OUTPUT.PUT_LINE('奖金'||to_char(v_bonus));

end;

select * from emp

--拷贝一个字段的类型结构

declare

 v_ename emp.ename%type;

 v_sal emp.sal%type;

 c_tax_rate constant number(3,2) :=0.03;

 v_sal_tax v_sal%type;

 begin

    select ename,sal into v_ename,v_sal from emp where empno=&eno;

    v_sal_tax :=v_sal * c_tax_rate;

    dbms_output.put_line('雇员名称:' || v_ename);

    dbms_output.put_line('工资:' || v_sal);

    dbms_output.put_line('所得税' || v_sal_tax);

    end;

    

    select * from emp

declare

  v_emp emp%rowtype; --与emp表中的各个列相同

  begin

     select * into v_emp from emp where empno=&eno;  --将emp表中的所有记录赋值给 v_emp, &表示输入一个新的值

     dbms_output.put_line('雇员名称:'|| v_emp.ename);

     dbms_output.put_line('工资:' || v_emp.sal);

     end;

     

 -- 拷贝一条记录中几个字段的数据结构

declare 

   type emp_record_type is record(

      name emp.ename%type,salary emp.sal%type,job emp.job%type

   );

   v_emp_record emp_record_type;

   begin

     select ename,sal,job into v_emp_record from emp where empno=&eno;

     dbms_output.put_line('雇员名称:' || v_emp_record.name);

     dbms_output.put_line('工资:'|| v_emp_record.salary);

     dbms_output.put_line('职位:' || v_emp_record.job);

  end;

  

  insert into emp select * from emp

  

  --拷贝整个表的表结构,逐行拷贝

  

  declare 

    type emp_table_type is table of emp%rowtype

    index by binary_integer;

    v_emp_table emp_table_type;

    begin

       select ename,sal into v_emp_table(1).ename,v_emp_table(1).sal from emp where empno=7369;

       select ename,sal into v_emp_table(2).ename,v_emp_table(2).sal from emp where empno=7370;

       dbms_output.put_line('雇员名称:'||v_emp_table(1).ename || '工资:' || v_emp_table(1).sal);

       dbms_output.put_line('雇员名称:' || v_emp_table(2).ename || '工资:' || v_emp_table(2).sal);

   end;

   

   --使用when loop 循环

   declare 

     v_i number:=1;

     v_s number:=0;

    begin

        loop

          exit when v_i>100;

           v_s:=v_s+v_i;

           v_i:=v_i+1;

        end loop;

        dbms_output.put_line('100之内的整数和:' || v_s);

    end;

    

    --使用while loop 循环;

  declare

     v_i number:=1;

     v_s number:=0;

     begin

     while v_i<=100 loop

      v_s:=v_s+v_i;

      v_i:=v_i+1;

      end loop;

      dbms_output.put_line('100以内的整数和:  '|| v_s);

  end;

  

  --求100以内的自然数

  declare 

     v_s number:=0;

     begin

        for v_i in 1..100 loop

           v_s:=v_s+v_i;

        end loop;

        dbms_output.put_line('100以内的自然数:'|| v_s);

   end;

   

   --求100-110之间的素数

   declare

       v_m number:=101;

       v_i number;

       v_n number:=0;

   begin

      while v_m<110 loop

        v_i:=2;

        loop

          exit when v_i>v_m-1;

          if mod(v_m,v_i)=0 then

            v_i:=0;

            exit;

           end if;

           v_i:=v_i+1;

          

        end loop;

        if v_i>0 then

          v_n:=v_n+1;

          dbms_output.put_line('第'|| v_n || '个素数是' || v_m);

        end if;

         v_m:=v_m+2;

      end loop;

    end;

最新文章

  1. 网络广告术语CPC、CPM和CTR的含义和关系
  2. Python安装BeautifulSoup库(Windows平台下)
  3. [saiku] 配置spring-security 允许 iframe加载saiku首页
  4. Oracle 11G R2 在windows server 2008 64位安装时提示:无法在windows &quot;开始&quot;菜单或桌面上创建项
  5. Delphi的Hint介绍以及用其重写气泡提示以达到好看的效果
  6. ssh爆破篇
  7. Asp.Net Core WebApi中接入Swagger组件(初级)
  8. 2018-2019-2 网络对抗技术 20165319 Exp3 免杀原理与实践
  9. linux命令中的字符串中间增加指令,例如路径中增加日期变量,实时获取当前的日期
  10. 如何正确使用QThread
  11. java中的基本数据类型一定存储在栈中吗?
  12. BZOJ.1935.[SHOI2007]Tree园丁的烦恼(CDQ分治 三维偏序)
  13. Sums of Digits CodeForces - 509C (贪心,模拟)
  14. Java界面编程—布局管理
  15. 移动端手势库hammerJS 2.0.4官方文档翻译(转)
  16. Eclipse中执行Maven命令时控制台输出乱码
  17. PostgreSQL 连接的问题
  18. python开发_python文件操作
  19. python应用:爬虫框架Scrapy系统学习第三篇——初识scrapy
  20. HDU1814 2-sat 模板

热门文章

  1. JavaScript快速入门(五)——表达式运算
  2. 使用 Nginx 创建服务器的负载均衡
  3. Python+Django+SAE系列教程15-----输出非HTML内容(图片/PDF)
  4. Xamarin 后台持续定位与提示
  5. Delphi Socket的最好项目——FastMsg IM(还有一些IM控件),RTC,RO,Sparkle等等,FileZilla Client/Server,wireshark,NSClient
  6. 关于ListCtrol自绘的技巧
  7. SVM入门(十)将SVM用于多类分类
  8. WM_PARENTNOTIFY的作用(不完全)
  9. A Game of Thrones(18) - Catelyn
  10. spring Annotation 组分注塑