pl/sql中好像不支持数组??(希望大家来讨论)

zhaoyongzhu 2002-07-05 11:43:19
好像pl/sql程序中不让定义数组,例如:testarr(10) varchar2(10);
这样会报错。
不知pl/sql中就是不能定义数组还是我的写法有错。希望高手指点。
...全文
92 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
mylovexs 2002-07-05
  • 打赏
  • 举报
回复
如果要是二维,三维,將索引表的數據類型設為RECORD類型,當然要先定義此類型.
zhaoyongzhu 2002-07-05
  • 打赏
  • 举报
回复
如果要是二维,三维。。。的怎么处理?
谢谢
本人主要是一时找不到有相关内容的资料。麻烦各位了。
zhaoyongzhu 2002-07-05
  • 打赏
  • 举报
回复
那这个自定义的数组的长度是多少,不会是30吧!!!!
还是。。。。。。。
KingSunSha 2002-07-05
  • 打赏
  • 举报
回复
可以用数组,TABLE类型,如:

--先在包中定义数组类型
TYPE typ1 IS TABLE OF varchar2(30) INDEX BY BINARY_INTEGER;

--然后可以引用该类型
declare
w_tbl1 typ1;
...
begin
w_tbl1(1) := 1;
w_tbl1(2) := 2;
...
end;
blue__star 2002-07-05
  • 打赏
  • 举报
回复
支持数组呀
双子涂鸦 2002-07-05
  • 打赏
  • 举报
回复
pl/sql中用表实现数组
表可以动态扩展
但是表无法初始数据项数
可以通过游标将数据依次加入到表中然后进行操作
我觉着也挺烦的
还不如直接对游标进行操作得了
KingSunSha 2002-07-05
  • 打赏
  • 举报
回复
30是指varchar2类型的长度,不是table type的数组长度,该数组没有长度限制

另外,数组可以采用varray类型,在8i以上版本中都支持。
mylovexs 2002-07-05
  • 打赏
  • 举报
回复
索引表沒有意義上的上限,varchar2(30)是表中數據類型的字符寬度.
zhaoyongzhu 2002-07-05
  • 打赏
  • 举报
回复
那这个自定义的数组的长度是多少,不会是30吧!!!!
还是。。。。。。。
3yugui 2002-07-05
  • 打赏
  • 举报
回复
没问题阿。

17,086

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧