zoukankan      html  css  js  c++  java
  • PL/SQL数据类型、控制语句

    SQL数据类型

    在SQL中适用的数据类型及子类型、数据类型比较规则、数据转换、格式模型等,在PL/SQL中均适用

    但以下除外:

    最大值不一样,例如 VARCHAR2,在SQL中最大是4000字节,而在PL/SQL中是32767字节
    BINARY_FLOAT和 BINARY_DOUBLE类型中多了一些常量定义,如
    BINARY_FLOAT_MAX_NORMAL
    SIMPLE_FLOAT和 SIMPLE_ DOUBLET两个子类型

    布尔数据类型

      定义

      <变量名>  BOOLEAN;

      值域

      TRUE,FALSE,NULL

      常用运算

      TRUE OR FALSE --> TRUE

      FALSE AND NULL --> FALSE

    PLS_INTEGER

    与 BINARY_INTEGERS完全一样
    范围是-2,147,483,648到2,147,483,647,用32位二进制表示
    可为NULL
    比 NUMBER或其子类,具有占用存储空间少,运算速度快的优势( PLS_INTEGER采用硬件计
    算而不是 NUMBER所使用的库计算,所以快很多)
    不具有 NOT NULL约束

    SIMPLE_INTEGER

    PLS_INTEGER的子类

    具有NOT NULL约束

    当确定PLS_INTEGER定义的变量值肯定不会包含NULL时,可改用SIMPLE_INTEGER来定义

    自定义的PL/SQL子类型

    SUBTYPE MYHEIGHT IS NUMBER(3,2);

    SUBTYPE SUBJECT_SCORE IS PLS_INTEGER RANGE 0..100;

    控制语句--条件

    if  then

    if  then  else

    if  then  elsif

    if  condition_1  then
        statements_1
    elsif  condition_2  then
        statements_2
    [elsif  condition_3  then
        statements_3
    ]...
    [
        else_statements        
    ]
    end if;

    简单case

    case selector
    when selector_value_1 then statements_1
    when selector_value_2 then statements_2
    ...
    when selector_value_n then statements_n
    [else
    else_statements]
    end case;

    查找式case

    case 
    when condition_1 then statements_1
    when condition_2 then statements_2
    ...
    when scondition_n then statements_n
    [else
    else_statements]
    end case;

    控制语句--循环

    基本的LOOP

    [lable]  loop
    statements
    end loop [lable];
    --特点:无限循环
    --exit:退出当前循环
    --continue: 中断当前的循环并进入下一次循环
    --对于多层循环,如果指定了lable,二者均是退出/中断lable对应的循环(从最内层调到最外层循环)

    for loop

    [lable] for index [reverse] lower_bound..upper_bound loop
    statements
    end loop[lable];

    while loop

    [lable] while condition loop
    statements
    end loop [lable];

    goto

    --可以跳转到指定的lable

    NULL

    NUL语句是不做任何事的语句
    为G0TO语句提供个“落脚点"
    可在条件语句中通过増加ELSE+NULL的方式,来对条件选择进行说明,使得代码可读性更佳
    在构建代码框架初期作为个占位符,用于保证整个结构能编译通过

  • 相关阅读:
    Linux内核分析— —操作系统是如何工作的(20135213林涵锦)
    【BARTS计划】【Share_Week1】社交产品思考
    【BARTS计划】【Tips_Week1】20190331更新
    【BARTS计划】【Review_Week1】Google Docs 成为青少年们喜爱的聊天 app
    【学习博客】Python学习初体验
    《构建之法》读书笔记5
    《构建之法》8&16
    《构建之法》读书笔记4
    《构建之法》读书笔记3
    《构建之法》读书笔记2
  • 原文地址:https://www.cnblogs.com/lag1/p/15322650.html
Copyright © 2011-2022 走看看