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的方式,来对条件选择进行说明,使得代码可读性更佳
    在构建代码框架初期作为个占位符,用于保证整个结构能编译通过

  • 相关阅读:
    数据库-插入数据insert,更新数据update,删除数据delete
    前端移动端监听键盘上的 开始/搜索 按键,并触发函数
    移动端input输入框把页面顶起, 收起键盘页面复原不了问题
    微信小程序如何把接口调用成功的回调函数返回的参数return出去?(promise就可以解决!!)
    js判断json数据是否存在某字段的方法
    微信小程序、微信公众号、H5之间能相互跳转
    java JDK的安装和环境配置(windows10)
    接私活必备的 10 个开源项目
    小程序获取自定义属性之e.target与e.currentTarget
    小程序中webview内嵌h5页面
  • 原文地址:https://www.cnblogs.com/lag1/p/15322650.html
Copyright © 2011-2022 走看看