隨筆 - 9  文章 - 5  trackbacks - 0
          <2009年1月>
          28293031123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(1)

          隨筆分類(lèi)

          隨筆檔案

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          Oracle本身沒(méi)數(shù)組的概念,但是通過(guò)Oracle的Collections和Records類(lèi)型可以模仿出單維數(shù)組和多維數(shù)組。

          請(qǐng)參考<<Oracle PL/SQL Programming>> Chapter 11、Chapter 12。


          ---------------------- 單維數(shù)組 ------------------------
          DECLARE
          TYPE emp_ssn_array IS TABLE OF NUMBER INDEX BY BINARY_INTEGER; ----注:聲明一個(gè)Collection

          best_employees emp_ssn_array;
          worst_employees emp_ssn_array;

          BEGIN
          best_employees(1) := '123456';
          best_employees(2) := '888888';

          worst_employees(1) := '222222';
          worst_employees(2) := '666666';

          FOR i IN 1..best_employees.count LOOP
          DBMS_OUTPUT.PUT_LINE('i='|| i || ', best_employees= ' ||best_employees(i)
          || ', worst_employees= ' ||worst_employees(i));
          END LOOP;

          END;



          ---------------------- 多維數(shù)組 ------------------------

          DECLARE

          TYPE emp_type IS RECORD ---------注:聲明一個(gè)Record類(lèi)型 emp_type
          ( emp_id employee_table.emp_id%TYPE,           ----Record類(lèi)型中的成員...
          emp_name employee_table.emp_name%TYPE,
          emp_gender employee_table.emp_gender%TYPE );

          TYPE emp_type_array IS TABLE OF ----注:聲明一個(gè)Collection類(lèi)型 emp_type_array ,其中元素為emp_type類(lèi)型
          emp_type INDEX BY BINARY_INTEGER;

          emp_rec_array emp_type_array;
          emp_rec emp_type;

          BEGIN
          emp_rec.emp_id := 300000000;
          emp_rec.emp_name := 'Barbara';
          emp_rec.emp_gender := 'Female';

          emp_rec_array(1) := emp_rec;

          emp_rec.emp_id := 300000008;
          emp_rec.emp_name := 'Rick';
          emp_rec.emp_gender := 'Male';

          emp_rec_array(2) := emp_rec;

          FOR i IN 1..emp_rec_array.count LOOP
          DBMS_OUTPUT.PUT_LINE('i='||i
          ||', emp_id ='||emp_rec_array(i).emp_id
          ||', emp_name ='||emp_rec_array(i).emp_name
          ||', emp_gender = '||emp_rec_array(i).emp_gender);
          END LOOP;

          END;
          -------------- Result --------------
          i=1, emp_id =300000000, emp_name =Barbara, emp_gender = Female
          i=2, emp_id =300000008, emp_name =Rick, emp_gender = Male

          posted on 2009-01-13 21:07 依然Fantasy 閱讀(456) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): Oracle
          主站蜘蛛池模板: 柳州市| 化州市| 沙雅县| 抚顺市| 阿拉善右旗| 舞阳县| 祁阳县| 绥德县| 西峡县| 邵阳市| 炎陵县| 甘肃省| 辉县市| 郁南县| 翁源县| 德格县| 枣强县| 广西| 屏南县| 沭阳县| 郧西县| 南木林县| 海宁市| 兴和县| 永州市| 淳安县| 顺平县| 清丰县| 屯留县| 万山特区| 蒙自县| 京山县| 禹城市| 白水县| 札达县| 库尔勒市| 陇西县| 乐至县| 祁连县| 上犹县| 饶河县|