日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
怎么使用CONSTANT變量與INDEXBY數(shù)組-創(chuàng)新互聯(lián)

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

創(chuàng)新互聯(lián)專注于企業(yè)成都全網(wǎng)營銷推廣、網(wǎng)站重做改版、沾益網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5技術、商城開發(fā)、集團公司官網(wǎng)建設、成都外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為沾益等各大城市提供網(wǎng)站開發(fā)制作服務。

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

CREATE OR REPLACE PACKAGE plch_pkg
   AUTHID DEFINER
IS
   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);
END;
/
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);
END;
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);
END;
/
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);
END;
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
IS
   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);
END;
/
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  /
3
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
IS
   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);
END;
/
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  /
3
PL/SQL procedure successfully completed
SQL>
答案CD. ORACLE只對嵌套表(NESTED TABLE)和可變數(shù)組(VARRAY)提供構造函數(shù)(constructor function), ASSOCIATED ARRAY (即INDEX BY表)則沒有這個構造函數(shù),必須采用自定義函數(shù)。常量在聲明的部分必須賦值,不能夠在塊中賦值。

到此,關于“怎么使用CONSTANT變量與INDEX BY數(shù)組”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續(xù)學習更多相關知識,請繼續(xù)關注創(chuàng)新互聯(lián)-成都網(wǎng)站建設公司網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
分享名稱:怎么使用CONSTANT變量與INDEXBY數(shù)組-創(chuàng)新互聯(lián)
網(wǎng)站鏈接:http://www.dlmjj.cn/article/dodjcc.html