题目:
世界上有很多不同品种的豚鼠,其中有一些具有可以识别的特征。比如:“埃塞俄比亚人(Abyssinians)”外皮上具有带褶皱的花环
“特塞尔绵羊(Texels)”有长长的卷毛。而“克雷斯特白豚鼠White Crested Guinea Pig”在头上一个白色的花纹(不出所料)
下列的每个选项提供了plch_proc过程的一种实现方法,它会显示给定特征的豚鼠品种;这个过程并不完备
哪些选项在执行下列的代码块之后会显示如下的两行?
Species=Texel
Species=
BEGIN
plch_proc ('curly');
plch_proc ('white');
END;
/
(A)
CREATE OR REPLACE PROCEDURE plch_proc (feature_in IN VARCHAR2)
IS
l_guinea_pig_species VARCHAR2 (100);
BEGIN
CASE feature_in
WHEN 'curly'
THEN
l_guinea_pig_species := 'Texel';
WHEN 'rosettes'
THEN
l_guinea_pig_species := 'Abyssinian';
END CASE;
DBMS_OUTPUT.put_line ('Species=' || l_guinea_pig_species);
END;
/
(B)
CREATE OR REPLACE PROCEDURE plch_proc (feature_in IN VARCHAR2)
IS
l_guinea_pig_species VARCHAR2 (100);
BEGIN
l_guinea_pig_species :=
CASE feature_in
WHEN 'curly' THEN 'Texel'
WHEN 'rosettes' THEN 'Abyssinian'
END;
DBMS_OUTPUT.put_line ('Species=' || l_guinea_pig_species);
END;
/
(C)
CREATE OR REPLACE PROCEDURE plch_proc (feature_in IN VARCHAR2)
IS
l_guinea_pig_species VARCHAR2 (100);
BEGIN
CASE feature_in
WHEN 'curly'
THEN
l_guinea_pig_species := 'Texel';
WHEN 'rosettes'
THEN
l_guinea_pig_species := 'Abyssinian';
ELSE
NULL;
END CASE;
DBMS_OUTPUT.put_line ('Species=' || l_guinea_pig_species);
END;
/
(D)
CREATE OR REPLACE PROCEDURE plch_proc (feature_in IN VARCHAR2)
IS
l_guinea_pig_species VARCHAR2 (100);
BEGIN
IF feature_in = 'curly'
THEN
l_guinea_pig_species := 'Texel';
ELSIF feature_in = 'rosettes'
THEN
l_guinea_pig_species := 'Abyssinian';
END IF;
DBMS_OUTPUT.put_line ('Species=' || l_guinea_pig_species);
END;
/
答案:
--BCD
注意CASE语句(statement)和CASE表达式(expression)在没有ELSE的情况下的区别
A是CASE语句,碰到没有处理的分支而又缺少ELSE子句就会报错:
"ORA-06592: CASE not found while executing CASE statement"
B用的是CASE表达式,在没有匹配的选项又没有ELSE的情况下返回NULL
C: 有 ELSE NULL 保护
D: IF 语句不会因为没有符合条件的条件值而报错
分享到:
相关推荐
编写控制结构 7.1 条件分支语句 7.2 CASE语句 7.3 循环语句 7.4 顺序控制语句 7.5 习题 第8章 使用复合数据类型 8.1 PL/SQL记录 8.1.1 定义PL/SQL记录 8.1.2 使用PL/SQL...
第一章 PL/SQL 程序设计简介 4 §1.2 SQL与PL/SQL 4 §1.2.1 什么是PL/SQL? 4 §1.2.1 PL/SQL的好处 4 §1.2.2 PL/SQL 可用的SQL语句 5 §1.3 运行PL/SQL程序 5 第二章 PL/SQL块结构和组成元素 6 §2.1 PL/...
第一章 PL/SQL 程序设计简介 4 §1.2 SQL与PL/SQL 4 §1.2.1 什么是PL/SQL? 4 §1.2.1 PL/SQL的好处 4 §1.2.2 PL/SQL 可用的SQL语句 5 §1.3 运行PL/SQL程序 5 第二章 PL/SQL块结构和组成元素 6 §2.1 PL/SQL块 6 ...
第一章 PL/SQL 程序设计简介 4 §1.2 SQL与PL/SQL 4 §1.2.1 什么是PL/SQL? 4 §1.2.1 PL/SQL的好处 4 §1.2.2 PL/SQL 可用的SQL语句 5 §1.3 运行PL/SQL程序 5 第二章 PL/SQL块结构和组成元素 6 §2.1 PL/SQL块 6 ...
第一章 PL/SQL 程序设计简介 4 §1.2 SQL与PL/SQL 4 §1.2.1 什么是PL/SQL? 4 §1.2.1 PL/SQL的好处 4 §1.2.2 PL/SQL 可用的SQL语句 5 §1.3 运行PL/SQL程序 5 第二章 PL/SQL块结构和组成元素 6 §2.1 PL/SQL块 6 ...
第一章 PL/SQL 程序设计简介 4 §1.2 SQL与PL/SQL 4 §1.2.1 什么是PL/SQL? 4 §1.2.1 PL/SQL的好处 4 §1.2.2 PL/SQL 可用的SQL语句 5 §1.3 运行PL/SQL程序 5 第二章 PL/SQL块结构和组成元素 6 §2.1 PL/SQL块 6 ...
本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大的SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以了解...
本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大的SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以了解...
本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大的SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以了解...
本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大的SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以了解...
本书全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有新增功能和工具,如何执行功能强大的SQL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象-关系数据库。通过学习本书,您可以了解...
7.3.4 使用case表达式 124 7.4 函数 126 7.4.1 有关函数的说明 126 7.4.2 字符处理函数 126 7.4.3 算术运算函数 131 7.4.4 日期时间函数 133 7.4.5 convert()函数转换日期、时间 136 第8章 聚合分析与分组 ...
7.3.4 使用CASE表达式 7.4 函数 7.4.1 有关函数的说明 7.4.2 字符处理函数 7.4.3 算术运算函数 7.4.4 日期时间函数 7.4.5 CONVERT()函数转换日期、时间 第8章 聚合分析与分组 8.1 聚合分析...
《Oracle Database 11g完全参考手册》全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有的新增功能和工具,如何执行功能强大的SOL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象,...
结构化查询语言(Structured Query Language)简称SQL,是一种关系数据库查询语言,用于存取数据以及查询、更新和管理关系数据库系统。 1.2 语句结构 1.2.1 数据查询语言(DQL) 对数据库进行的信息查询,select。 ...
《Oracle Database 11g完全参考手册》全面详细地介绍了Oracle Database 11g的强大功能,阐述了如何使用所有的新增功能和工具,如何执行功能强大的SOL查询,如何编写PL/SQL和SQL*Plus语句,如何使用大对象和对象,...
SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。 SQL语言主要包含5个部分 数据定义...
Oracle中PL/SQL单行函数和组函数详解 mssql+oracle Oracle编程的编码规范及命名规则 Oracle数据库字典介绍 0RACLE的字段类型 事务 CMT DEMO(容器管理事务演示) 事务隔离性的一些基础知识 在组件之间实现事务和异步...