Oracle PL/SQL数值集合调用带数字参数的trim方法的作用是什么
Oracle PL/SQL 集合
trim(count) 方法作用说明 你提到的是Oracle PL/SQL中嵌套表/可变数组(VARRAY)类型的内置集合方法,ids_list.trim(count)的作用是从集合的尾部删除指定数量的元素,具体行为如下:
- 当
count为正整数时:从集合的最后一位开始往前数,删除对应数量的元素,剩余元素的下标保持不变,被删除的元素占用的空间会被释放,后续访问被删除位置的下标会抛出SUBSCRIPT_BEYOND_COUNT异常 - 当
count等于集合当前总元素数时:会清空集合内的所有元素,集合长度变为0 - 当
count大于集合当前总元素数时:会直接抛出SUBSCRIPT_OUTSIDE_LIMIT运行时异常 - 当
count等于0时:不会对集合做任何修改
注意事项
- trim方法仅对已经完成初始化的非空集合生效,如果集合变量处于未初始化的null状态,调用trim会抛出
COLLECTION_IS_NULL异常 - trim方法只能从尾部删除元素,无法指定删除中间或头部的元素
示例代码
DECLARE -- 定义你用到的number集合类型 TYPE num_tab IS TABLE OF NUMBER(38,0); ids_list num_tab := num_tab(10,20,30,40,50); -- 初始化5个元素,长度为5 BEGIN ids_list.trim(2); -- 调用trim删除尾部2个元素 DBMS_OUTPUT.PUT_LINE('集合当前长度:' || ids_list.COUNT); -- 输出3 DBMS_OUTPUT.PUT_LINE('最后一位元素值:' || ids_list(3)); -- 输出30 END; /
内容的提问来源于stack exchange,提问作者dfgznb
相关产品推荐
相关产品推荐

