• pl/sql语法


    程序结构
     
    declare
         说明部分 定义变量
    begin
         语句序列DML语句
    exception
         处理例外
    end;
     
    语法
    PLSQLOraclesql语言的过程化扩展,指在SQL命令语言中增加了过程处理语句(如分支、循环等),
    使SQL语言具有过程处理能力。把SQL语言的数据操纵能力与过程语言的数据处理能力结合起来,
    使得PLSQL面向过程但比过程语言简单、高效、灵活和实用。
    变量

    在程序的声明阶段可以来定义常量和变量。

    • 变量的基本类型就是ORACLE中的建表时字段的变量如char, varchar2, date, number, boolean, long
    定义语法:varl  char(15);
                Psal  number(9,2);
    说明变量名、数据类型和长度后用分号结束说明语句。
    常量定义:married   constant boolean:=true
    • 引用变量
    Myname  emp.ename%type;
    引用型变量,即my_name的类型与emp表中ename列的类型一样
    sql中使用into来赋值

    declare emprec emp.ename%type;

    begin

      select t.ename into emprec from emp t where t.empno = 7369;

      dbms_output.put_line(emprec);

    end;

    将查询到的语句赋值给emprec

    • 记录型变量
    Emprec  emp%rowtype 代表一行
    记录变量分量的引用
     

    注意   := 赋值符号等价于java中的=;

             = 逻辑等,判断两个值是否相等,等价于java中的==
    循环
    LOOP [luːp]循环语句
    其中语法2比较常用

    语法1

    WHILE  条件  LOOP

    .. .

    total : = total + salary;

    END  LOOP;

    语法2

    Loop

    EXIT  when   条件;

    ……

    End loop

    语法3

    FOR   I   IN   1 . . 3    LOOP

    语句序列 ;

    END    LOOP ;

     
     1 范例:使用语法1输出1到10的数字
     2  
     3 declare
     4  
     5   step number := 1;
     6  
     7 begin
     8  
     9   while step <= 10 loop
    10  
    11     dbms_output.put_line(step);
    12  
    13     step := step + 1;
    14  
    15   end loop;
    16  
    17 end;
     
  • 相关阅读:
    php socket 模型及效率问题
    深入浅出讲解:php的socket通信
    发现一个nginx LUA开发Web App的框架
    centos6.x 抓取ssh登录的用户名和密码
    使用Lua的扩展库LuaSocket用例
    Lua开发
    ngx.location.capture 只支持相对路径,不能用绝对路径
    PHP获得数组的交集与差集
    php用explode,可以提供多个字符作为分割符来进行分割数组吗?
    resizable可调整尺寸组件
  • 原文地址:https://www.cnblogs.com/anzhi/p/7515928.html
Copyright © 2020-2023  润新知