如何使用 CONSTANT 变量和 INDEX BY 数组

分类:编程技术 时间:2024-02-20 15:50 浏览:0 评论:0
0
本文主要介绍“如何使用CONSTANT变量和INDEX BY数组”。在日常操作中,相信很多人对于如何使用CONSTANT变量和INDEX BY数组都有疑问。小编查阅了各种资料,整理出了简单好用的方法。使用的操作方法,希望能帮助您解答“如何使用CONSTANT变量和INDEX BY数组”的疑惑!接下来就请跟随小编一起来学习吧!

我创建了以下标头:

CREATE OR REPLACE PACKAGE plch_pkg AUTHID DEFINERIS TYPE names_t IS TABLE OF VARCHAR2 (20) INDEX BY PLS_INTEGER;END plch_pkg;/

哪些选项执行后会显示“3”?

(A)

DECLARE l_names CONSTANT plch_pkg.names_t := plch_pkg.names_t ('Horton', 'Hears', ' A Who') ;BEGIN DBMS_OUTPUT.put_line (l_names.COUNT);END;/
SQL> DECLARE 2 l_names CONSTANTplch_pkg.names_t 3 := plch_pkg.names_t ('Horton', 'Hears', 'A Who '); 4 BEGIN 5 DBMS_OUTPUT.put_line (l_names.COUNT); 6 结束; 7 /DECLARE l_names CON STANT plch_pkg.names_t := plch_pkg .names_t ('Horton', 'Hears', 'A Who') ;BEGIN DBMS_OUTPUT.put_line (l_names.COUNT);END;ORA-06550: 第 3 行,第 10 列:PLS-00222:不在此范围内 存在名为“NAMES_T”的函数 ORA-06550:第 2 行,第 14 列:PL/SQL:忽略项目ORA-06550:第 5 行,第 26 列:PLS-00320:此类型的类型声明表达式不完整或格式不正确 ORA-06550: 第 5、4 行 列:PL/SQL: 语句被忽略SQL>

(B)

DECLARE l_names CONSTANT plch_pkg.names_t := plch_pkg。 name_t () ;开始 l_names (1) := ' 霍顿'; l_names (2) := '听到'; l_names (3) := '一个谁'; DBMS_OUTPUT.put_line (l_names.COUNT);END;/
SQL> DECLARE 2 l_names CONSTANT plch_pkg .names_t 3                                                                             sp; l_names (1) := '霍顿'; 6 l_names (2) := '听到'; 7 l_names (3) := '一个谁'; 8 DBMS_OUTPUT.put_line(l_names.COUNT); 9 结束; 10 / 声明 l_names 常量 plch_pkg.names_t:= plch_pkg.names_t ();BEGIN l_names (1) := '霍顿'; l_names (2) := '听到'; l_names (3) := '一个谁'; DBMS_OUTPUT.put_line ( l_names.COUNT);END;ORA-06550:第 3 行,第 29 列:PLS-00222:此范围内不存在名为“NAMES_T”的函数 ORA-06550:第 2 行,第 14 列:PL/SQL :忽略项目ORA-06550:第 5 行,第 4 列:PLS-00320:此表达式 表达式的类型声明不完整或格式错误 ORA-06550:第 5 行,第 4 列:PL/SQL:忽略语句ORA-06550:第 6 行,第 4 列:PLS-00320:此表达式的类型声明不完整或格式错误 ORA-06550:第 6 行,第 4 列:PL/SQL:忽略语句ORA-06550:第 7 行,第 4 列:PLS-00320:类型声明此表达式不完整或格式错误 ORA-06550: 第 7 行,第 4 列:PL/SQL:忽略语句ORA-06550: 第 8 行,第 26 列:PLS-00320: 此表达式的类型声明不完整或格式错误 ORA-06550:语句第 8 行第 4 列:PL/SQL:忽略语句SQL>

(C)

CREATE 或替换函数 plch_dr_seuss_names 返回 plch_pkg.names_tIS l_return plch_pkg.names_t;BEGIN l_return (1) := 'Horton'; l_return (2) := '听到'; l_return (3) := '一个谁'; RETURN l_return;END plch_dr_ seuss_names;/DECLARE l_names CONSTANT plch_pkg.names_t := plch_dr_seuss_names ();BEGIN DBMS_OUTPUT.put_line (l_names.COUNT);END;/
SQL> 创建或替换函数 plch_dr_ seuss_names 2返回plch_pkg.names_t 3 IS 4 l_return plch_pkg.names_t ; 5 BEGIN 6 l_return (1) := '霍顿'; 7 l_return (2) := '听到'; 8 l_return (3) := '一个谁'; 9 返回 l_return; 10 结束 plch_dr_seuss_names; 1 1 /函数创建SQL> DECLARE 2 l_names CONSTANT plch_pkg.names_t 3 := plch_dr_seuss_names (); 4 BEGIN 5 DBMS_OUTPUT.put_line (l_names.COUNT); 6 结束; 7 /3PL/SQL 过程成功完成SQL>

(D)

CREATE OR REPLACE FUNCTION plch_dr_seuss_names ( name1_in IN VARCHAR2, name2_in IN VARCHAR2, name3_in IN VARCHAR2) RETURN plch_pkg.names_tIS l_return plch_pkg .names_t;BEGIN l_return (1) := name1_in; l_return (2) := name2_in; l_return (3) := name3_in; RETURN l_return;END plch_dr_seuss_names;/DECLARE l_names CONSTANT plch_pkg.names_t := plch_dr_s euss_names ('Horton', 'Hears', 'A Who ') ;BEGIN DBMS_OUTPUT.put_line (l_names.COUNT);END;/
< pre>SQL> 创建或替换函数 plch_dr_seuss_names ( 2 name1_in IN VARCHAR2 3 , name2_in IN VARCHAR2 4 , name3_in IN VARCHAR2) 5 RETURN plch_pkg.names_t 6 IS 7 l_return plch_pkg.names_t; 8 BEGIN 9 l_return (1) := name1_in; 10 l_return (2) := name2_in; 11 l_return (3) := name3_in; 12 返回 l_return; 13 结束 plch_dr_seuss_names; 14 /Function createdSQL> DECLARE 2 l_names CONSTANT plch_pkg.names_t  3 := plch_dr_seuss_names ('Horton', 'Hears', 'A Who') ; 4 BEGIN 5 DBMS_OUTPUT.put_line (l_names.COUNT); 6 结束; 7 /3PL/SQL程序顺利完成SQL>
答案光盘。 ORACLE只提供了嵌套表(NESTED TABLE)和变量数组(VARRAY)的构造函数。关联数组(即INDEX BY表)没有这个构造函数,必须使用自定义函数。常量必须在声明部分赋值,不能在块中赋值。 

“如何使用CONSTANT变量和INDEX BY数组”的学习到此结束。希望能够解答大家的疑惑。理论与实践相结合,能够更好的帮助大家学习,去尝试吧!如果您想继续了解更多相关知识,请继续关注网站。小编会继续努力,给大家带来更多实用的文章!

1. 本站所有资源来源于用户上传或网络,仅作为参考研究使用,如有侵权请邮件联系站长!
2. 本站积分货币获取途径以及用途的解读,想在本站混的好,请务必认真阅读!
3. 本站强烈打击盗版/破解等有损他人权益和违法作为,请各位会员支持正版!
4. 编程技术 > 如何使用 CONSTANT 变量和 INDEX BY 数组

用户评论