日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

oracle 存储怎么使用,Oracle存储过程中如何使用数组(附范例)

發布時間:2024/9/27 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle 存储怎么使用,Oracle存储过程中如何使用数组(附范例) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

在PL/SQL中是沒有數組(Array)概念的,但是如果程序員想用Array的話,可以用TYPE和 Table of Record變通一下,來代替多維數組.

1 單維數組

--單維數組

DECLARE

TYPE emp_ssn_array IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;

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;

2 多維數組

--多維數組

DECLARE

TYPE emp_type IS RECORD(

emp_id employee_table.emp_id%TYPE,

emp_name employee_table.emp_name%TYPE,

emp_gender employee_table.emp_gender%TYPE);

TYPE emp_type_array IS TABLE OF 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;

3 實例

DECLARE

-- 聲明數組類型

TYPE ts_varray IS VARRAY(20) OF NUMBER(10); --20是最大的下標

-- 聲明數組變量

vs_varray ts_varray := ts_varray();

BEGIN

FOR i IN 1 .. 20 LOOP

-- 自增數組大小

vs_varray.extend; --注釋該行的話,會報下標越界的錯誤

-- 數組賦值

vs_varray(i) := trunc(dbms_random.value(100, 200));

END LOOP;

-- 循環數組

FOR i IN 1 .. vs_varray.count LOOP

dbms_output.put_line('i = ' || i || ',value = ' || vs_varray(i));

END LOOP;

END;

總結

以上是生活随笔為你收集整理的oracle 存储怎么使用,Oracle存储过程中如何使用数组(附范例)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。