• oracle数据库(五)


        PL/SQL基础

    PL/SQL语言是对oracle数据库语言的扩展,是一种高性能的基于处理事务的语言,能运行在任何oracle环境中,支持所有数据处理命令,支持所有SQL数据类型和函数,支持所有oracle对象类型。PL/SQL块可以被命名和存储在数据库服务器中,同时也能被其他的PL/SQL程序或者SQL命令调用,所以具有很好的重用性。

    一.PL/SQL程序块的基本结构

    [declare
     --声明变量
     ]
    begin
     --代码逻辑
    [exception
     --异常处理
     ]
    end;

    注意:PL/SQL程序块中的语句用;作为结尾,所以;不会作为执行程序块的符号,使用/表示执行程序块。

    二.常量和变量

    2.1常量被定义后,需要初始化值,而且需要使用constant关键字,语法形式如下:

    constant_name CONSTANT data_type { :=  | DEFAULT} value;

    emp_number CONSTANT NUMBER(4)   := 7900;

    :=不能分开,之间不能有空格。

    2.2变量定义不用进行初始化,不需要CONSTANT关键字,变量值可以被程序修改。

    variable_name data_type { :=  | DEFAULT} value;

    三.%TYPE类型和%ROWTYPE类型

    3.1 如果我们定义变量是无法确定其和数据库中对性的属性类型,我们可以使用%TYPE隐式的变量的数据类型指定为对应列的数据类型。

    %ROWTYPE类型针对表中的一行,使用%ROWTYPE类型定义的变量可以存储表中一行数据。

    3.2PL/SQL记录类型

    PL/SQL记录类型用户用来自定义存储类型,可以存储由一个或者多个字段组成的一行数据。

    创建语法如下:

    TYPE record_name IS RECORD(
    field_name data_type {:= | default} .....
    );

    四.条件选择语句和循环语句

    4.1 IF条件语句

    f 条件 then
     业务逻辑
    [ elsif 条件 then
     业务逻辑
    else
     业务逻辑 ]
    end if;

    4.2无条件循环

    loop
     --循环语句
     [exit when 条件;]
    end loop;

    4.3有条件循环

    while 条件
    loop
    --循环语句
    end loop;

    4.4for循环

    for 变量 in 起始值..终止值
    loop
    --循环语句
    end loop;

    五.游标

    使用select语句返回一个结果集,如果要对结果集中单独的行进行操作,需要使用游标。使用游标的四个步骤为声名游标、打开游标、检索游标、关闭游标。

    1.声名游标,主要定义一个游标名称对应一个select语句,从而可以利用该游标对此查询语句返回的结果集进行单独操作。

    declear

        cursor emp_cursor (dept_num NUMBER :=20)

         is 

        select empno,ename,job,sal

        from emp where deptno =dept_num;

    2.打开游标

    open cursor_name(参数);

    3.检索游标

    fetch cursor_name into variable{.....};

    将查询的数据用定义的变量保存起来。

    4.关闭游标

    close cursor_name;

  • 相关阅读:
    POJ 2996 Help Me with the Game (模拟)
    PCL系列——怎样逐渐地配准一对点云
    sublime text3同时编辑多行
    博客搬家
    将博客搬至CSDN
    centos7用xshell可以连接, xftp连接失败!(墙裂推荐)
    重启ssh服务出现Redirecting to /bin/systemctl restart sshd.service
    重装wordpress
    ubuntu 16.04 启用root用户方法
    Ubuntu创建新用户并增加管理员权限(授权有问题)
  • 原文地址:https://www.cnblogs.com/zzuli/p/9474954.html
Copyright © 2020-2023  润新知