`
hong_1121
  • 浏览: 53251 次
  • 来自: ...
社区版块
存档分类
最新评论

ORALCE分支

阅读更多
分支语语句

1.条件

  1)IF条件判断逻辑结构
  If条件判断逻辑结构有三种表达方式。
  ①表达式一:
<!---->IF Condition THEN
  Statement;
END IF;

  该表达式的功能为:若条件为真,执行then后的语句;否则,跳出条件语句执行end if后的语句。
  ②表达式二:
<!---->IF Condition THEN
  Statements_1;
ELSE
  Statements_2;
END IF;

  该表达式的功能为:如果条件为真执行then后的语句,否则执行else后的语句。
  ③表达式三:
<!---->IF Condition1 THEN
  Statements_1;
ELSEIF Condition2 
THEN
  Statements_2;
ELSE
  Statements_3;
END IF;

  该表达式的功能为:如果if后的条件成立,执行then后面的语句,否则判断elseif后面的条件,条件成立执行第二个then后面的语句,否则执行else后的语句。这是条件语句嵌套。IF 可以嵌套,可以在IF 或IF ..ELSE语句中使用IF或IF…ELSE语句。

  2)CASE表达式
  CASE语句的基本格式如下:
<!---->CASE Grade
  
WHEN 'A' THEN DBMS_OUTPUT.PUT_LINE ('Excellent');
  
WHEN 'B' THEN DBMS_OUTPUT.PUT_LINE ('Very Good');
  
WHEN 'C' THEN DBMS_OUTPUT.PUT_LINE ('Good');
  
WHEN 'D' THEN DBMS_OUTPUT.PUT_LINE ('Fair');
  
WHEN 'F' THEN DBMS_OUTPUT.PUT_LINE ('Poor');
  
ELSE DBMS_OUTPUT.PUT_LINE ('No such grade');
END CASE;

  CASE语句的功能:首先设定变量的值作为条件,然后顺序检查表达式,一旦从中找到与条件匹配的表达式值,就停止CASE语句的处理。

2.循环

  1)LOOP…EXIT…END循环控制语句
  LOOP循环语句是其中最基本的一种,格式如下:
<!---->LOOP
  Statements;
END LOOP;

  这种循环语句是没有终止的,如果不人为控制的话,其中的Statements将会无限地执行。一般可以通过加入EXIT语句来终结该循环。

  2)WHILE…LOOP循环控制语句
  WHILE…LOOP循环控制语句的格式如下:
<!---->WHILE Condition
LOOP
  Statements;
END LOOP;

  WHILE…LOOP有一个条件与循环相联系,如果条件为TRUE,则执行循环体内的语句,如果结果为FALSE,则结束循环。

  3)FOR…LOOP循环控制语句
  FOR…LOOP循环控制语句的格式如下:
<!---->FOR Counter IN [REVERSE] Start_Range…End_Range
LOOP
  Statements;
END LOOP;

  LOOP和WHILE循环的循环次数都是不确定的,FOR循环的循环次数是固定的,Counter是一个隐式声明的变量,初始值是Start_Range,第二个值是Start_Range + 1,直到End_Range,如果Start_Range等于End _Range,那么循环将执行一次。如果使用了REVERSE关键字,那么范围将是一个降序。

3.跳转
  GOTO语句的格式如下:
    GOTO LABEL;
  执行GOTO语句时,控制会立即转到由标签标记的语句(使用<<>>声明)。PL/SQL中对GOTO语句有一些限制,对于块、循环、IF语句而言,从外层跳转到内层是非法的。
<!---->DECLARE
  X         
NUMBER(3);
  Y         
NUMBER(3);
  V_COUNTER 
NUMBER(2);
BEGIN
  X :
= 100;
  
FOR V_COUNTER IN 1 .. 10 LOOP
    
IF V_COUNTER = 4 THEN
      
GOTO end_of_loop;
    
END IF;
    X :
= X + 10;
  
END LOOP;
  
<<end_of_loop>>
  Y :
= X;
  dbms_output.put_line(
'Y:'||Y);
END;

  输出结果为“Y:130”。

4.嵌套
  程序块的内部可以有另一个程序块这种情况称为嵌套。嵌套要注意的是变量,定义在最外部程序块中的变量可以在所有子块中使用,如果在子块中定义了与外部程序块变量相同的变量名,在执行子块时将使用子块中定义的变量。子块中定义的变量不能被父块引用。同样GOTO语句不能由父块跳转道子块中,反之则是合法的。
分享到:
评论

相关推荐

    如何卸载Oracle 如何卸载Oracle

    - 使用`regedit`打开注册表编辑器,定位到`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个Oracle分支。 - 再次进入注册表编辑器,定位到`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,删除所有与...

    卸载oracle10g的步骤

    - 导航到`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个Oracle分支。 3. **清除Oracle服务项**: - 转至`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,删除所有与Oracle相关的子键。 4. **移除...

    完全卸载oracle11g

    - 导航至`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个Oracle分支。 - 继续导航到`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,查找并删除所有与Oracle相关的子键。 - 接下来,前往`HKEY_LOCAL_...

    Oracle10g完全卸载

    - 打开注册表编辑器(`regedit`),定位到 `HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,并删除整个 Oracle 分支。 - 定位到 `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,滚动查找并删除所有与 Oracle 相关...

    oracle卸载文档

    - `HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`:删除整个Oracle分支。 - `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`:删除所有以“oracle”或“OraWeb”开头的服务条目。 - `HKEY_LOCAL_MACHINE\SYSTEM\...

    oracle 10G卸载

    - 导航到 `HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个 Oracle 分支。 - 导航到 `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,查找并删除所有与 Oracle 相关的条目。 #### 4. 清理 Oracle 文件夹 ...

    彻底删除Oracle文档

    - 导航至`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个Oracle分支。 - 继续导航到`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,查找并删除所有包含Oracle的条目。 - 转至`HKEY_LOCAL_MACHINE\SYSTEM...

    oracle10g 完全卸载

    - 导航至`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,删除整个Oracle分支。 - 转至`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,找到并删除所有与Oracle相关的子键。 - 进一步清理`HKEY_LOCAL_MACHINE\...

    卸载oracle在windwos平台及unix平台.doc

    - 打开注册表编辑器(regedit),定位到HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE,删除整个Oracle分支。 - 再次定位到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services,删除所有与Oracle相关的条目。 ### 4. ...

    Oracle_01Uninstall.txt

    - 导航到`HKEY_LOCAL_MACHINE\SOFTWARE\Oracle`,并删除整个Oracle分支。 - 导航到`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,找到以“Oracle”开头的服务项,如“OracleService”,并删除这些键值。...

    Oracle卸载

    1. HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE - 删除整个Oracle分支。 2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ - 删除所有包含“Oracle”的子键。 3. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\...

    oracle删除

    1. `HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`:删除整个Oracle分支。 2. `HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`:滚动浏览并删除所有Oracle相关服务的条目。 3. `HKEY_LOCAL_MACHINE\SYSTEM\...

    卸载oracle

    运行“regedit”打开注册表编辑器,定位至`HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE`,将整个Oracle分支删除。接着,转至`HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services`,删除所有Oracle相关的服务条目。最后...

    develper-oracle

    Oracle虽然主要以二进制形式提供,但开源的Oracle分支如OpenJDK和Berkeley DB等可以帮助开发者了解其底层运作。 另一个标签“工具”则涵盖了Oracle提供的多种开发和管理工具,例如SQL Developer(用于编写SQL查询)...

    Oracle Exception汇总(自定义Oracle异常)

    Oracle数据库在处理错误和异常时有一套完整的机制,这些异常主要分为预定义异常和自定义异常。预定义异常是Oracle系统已经内置的一些常见错误,它们都有对应的错误代码(ORA-xxx)。下面,我们将深入探讨一些常见的...

    脱机下RedHat7.6安装Oracle11g详细攻略.pdf

    对于IT专业人士来说,了解这些步骤是必须的,因为Oracle数据库管理是数据库管理领域中的一个重要分支。同时,从文档中我们可以了解到Linux系统配置、软件包管理、系统优化、环境变量配置等IT基础知识点。掌握这些...

    Windows下删除Oracle

    对 `HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001` 和 `HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002` 下的 `\Enum\Root` 分支执行相同的操作。 5. 在Windows XP系统中,运行`regedit`,找到所有以 “LEGACY_ORACLE” ...

Global site tag (gtag.js) - Google Analytics