我在我的前面這樣一段代碼:Oracle PL/SQL數組是從0還是從1索引的?
FOR row IN 1..l_RowSet(1).count
LOOP
l_a_variable := l_RowSet(1)(row);
END LOOP;
l_RowSet
是APEX型 - apex_plugin_util.t_column_value_list
- 如此定義:
type t_column_value_list is table of wwv_flow_global.vc_arr2 index by pls_integer;
其中wwv_flow_global.vc_arr2
被定義爲
type vc_arr2 is table of varchar2(32767) index by binary_integer;
vc_arr2
從apex_plugin_util.get_data
函數傳遞迴我的代碼。 vc_arr2由列編號索引,而不是按行索引。
盡我所能,這意味着數據被有效地存儲在一個二維數組中,按列索引,然後按行索引。
使用LOOP語句時,這是從零還是從一個索引?因爲在我看來,我應該能夠使該循環冗餘,即:
l_a_variable := l_RowSet(1)(1);
但我需要提前知道是否給予0或1的初始行。
我無法在Oracle文檔中找到明確的答案(不出所料,「索引」是一個相當廣泛使用的術語),並且通過SO查看並沒有向任何其他人展示相同的問題。
謝謝。我更新了這個問題以更好地解釋get_data的作用。它*是一個2D集合,按列和行排列。由於PL/SQL數組可能很稀疏,我需要再挖掘一些來看看它是什麼讓我「活」。 – 2012-07-27 04:08:56
@JacquesChester - 'apex_plugin_util.get_data'返回一個類型爲't_column_value_list'的集合,這是一個多維數組。更新了問題並從我的答案中刪除了1D/2D討論。 – 2012-07-27 04:28:37