久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

怎么使用CONSTANT變量與INDEX BY數(shù)組

162次閱讀
沒有評論

共計 4027 個字符,預(yù)計需要花費 11 分鐘才能閱讀完成。

這篇文章主要介紹“怎么使用 CONSTANT 變量與 INDEX BY 數(shù)組”,在日常操作中,相信很多人在怎么使用 CONSTANT 變量與 INDEX BY 數(shù)組問題上存在疑惑,丸趣 TV 小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”怎么使用 CONSTANT 變量與 INDEX BY 數(shù)組”的疑惑有所幫助!接下來,請跟著丸趣 TV 小編一起來學(xué)習(xí)吧!

我創(chuàng)建了如下包頭:

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

哪些選項在執(zhí)行之后會顯示 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);
/
SQL  DECLARE
 2 l_names CONSTANT plch_pkg.names_t
 3 := plch_pkg.names_t (Horton ,  Hears ,  A Who) ;
 4 BEGIN
 5 DBMS_OUTPUT.put_line (l_names.COUNT);
 6 END;
 7 /
DECLARE
 l_names CONSTANT plch_pkg.names_t
 := plch_pkg.names_t (Horton ,  Hears ,  A Who) ;
BEGIN
 DBMS_OUTPUT.put_line (l_names.COUNT);
ORA-06550:  第  3  行,  第  10  列: 
PLS-00222:  在此范圍中不存在名為   NAMES_T   的函數(shù)
ORA-06550:  第  2  行,  第  14  列: 
PL/SQL: Item ignored
ORA-06550:  第  5  行,  第  26  列: 
PLS-00320:  此表達式的類型聲明不完整或格式不正確
ORA-06550:  第  5  行,  第  4  列: 
PL/SQL: Statement ignored
SQL

(B)

DECLARE
 l_names CONSTANT plch_pkg.names_t
 := plch_pkg.names_t () ;
BEGIN
 l_names (1) :=  Horton 
 l_names (2) :=  Hears 
 l_names (3) :=  A Who 
 DBMS_OUTPUT.put_line (l_names.COUNT);
/
SQL  DECLARE
 2 l_names CONSTANT plch_pkg.names_t
 3 := plch_pkg.names_t () ;
 4 BEGIN
 5 l_names (1) :=  Horton 
 6 l_names (2) :=  Hears 
 7 l_names (3) :=  A Who 
 8 DBMS_OUTPUT.put_line (l_names.COUNT);
 9 END;
 10 /
DECLARE
 l_names CONSTANT plch_pkg.names_t
 := plch_pkg.names_t () ;
BEGIN
 l_names (1) :=  Horton 
 l_names (2) :=  Hears 
 l_names (3) :=  A Who 
 DBMS_OUTPUT.put_line (l_names.COUNT);
ORA-06550:  第  3  行,  第  29  列: 
PLS-00222:  在此范圍中不存在名為   NAMES_T   的函數(shù)
ORA-06550:  第  2  行,  第  14  列: 
PL/SQL: Item ignored
ORA-06550:  第  5  行,  第  4  列: 
PLS-00320:  此表達式的類型聲明不完整或格式不正確
ORA-06550:  第  5  行,  第  4  列: 
PL/SQL: Statement ignored
ORA-06550:  第  6  行,  第  4  列: 
PLS-00320:  此表達式的類型聲明不完整或格式不正確
ORA-06550:  第  6  行,  第  4  列: 
PL/SQL: Statement ignored
ORA-06550:  第  7  行,  第  4  列: 
PLS-00320:  此表達式的類型聲明不完整或格式不正確
ORA-06550:  第  7  行,  第  4  列: 
PL/SQL: Statement ignored
ORA-06550:  第  8  行,  第  26  列: 
PLS-00320:  此表達式的類型聲明不完整或格式不正確
ORA-06550:  第  8  行,  第  4  列: 
PL/SQL: Statement ignored
SQL

(C)

CREATE OR REPLACE FUNCTION plch_dr_seuss_names
 RETURN plch_pkg.names_t
 l_return plch_pkg.names_t;
BEGIN
 l_return (1) :=  Horton 
 l_return (2) :=  Hears 
 l_return (3) :=  A Who 
 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);
/
SQL  CREATE OR REPLACE FUNCTION plch_dr_seuss_names
 2 RETURN plch_pkg.names_t
 3 IS
 4 l_return plch_pkg.names_t;
 5 BEGIN
 6 l_return (1) :=  Horton 
 7 l_return (2) :=  Hears 
 8 l_return (3) :=  A Who 
 9 RETURN l_return;
 10 END plch_dr_seuss_names;
 11 /
Function created
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 END;
 7 /
PL/SQL procedure successfully completed
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_t
 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_seuss_names (Horton ,  Hears ,  A Who) ;
BEGIN
 DBMS_OUTPUT.put_line (l_names.COUNT);
/
SQL  CREATE OR REPLACE FUNCTION 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 RETURN l_return;
 13 END plch_dr_seuss_names;
 14 /
Function created
SQL  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 END;
 7 /
PL/SQL procedure successfully completed
SQL
答案 CD. ORACLE 只對嵌套表 (NESTED TABLE) 和可變數(shù)組 (VARRAY) 提供構(gòu)造函數(shù) (constructor function), ASSOCIATED ARRAY (即 INDEX BY 表) 則沒有這個構(gòu)造函數(shù),必須采用自定義函數(shù)。常量在聲明的部分必須賦值,不能夠在塊中賦值。

到此,關(guān)于“怎么使用 CONSTANT 變量與 INDEX BY 數(shù)組”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注丸趣 TV 網(wǎng)站,丸趣 TV 小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-07-26發(fā)表,共計4027字。
轉(zhuǎn)載說明:除特殊說明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 永川市| 泰安市| 衡南县| 福贡县| 那坡县| 蓬溪县| 肥乡县| 神池县| 奉节县| 江津市| 满洲里市| 五大连池市| 怀化市| 凤阳县| 金川县| 广西| 来宾市| 庄浪县| 莱芜市| 水富县| 治多县| 张家港市| 武鸣县| 大荔县| 正蓝旗| 茶陵县| 南漳县| 中方县| 合山市| 沂南县| 禹城市| 辽宁省| 崇文区| 高陵县| 措勤县| 永顺县| 九龙城区| 应用必备| 汝城县| 凌海市| 汕头市|