求高手帮忙,存储过程
时间:2011-09-20
来源:互联网
有一表 有 sign1,sign2....sign20;20个字段,我想写一个存储过程,出入ID,传出一个数字报错这20个字段,我自己写的如下:
create or replace procedure getSign(id in TEST.USERPHONE%TYPE, signList out array) is
flag number;
begin
flag:=1;
for i in 1..10 loop
select sign||flag into signList(flag) from TEST where userphone=id;
flag:=flag+1;
end loop
end;
不过有错误,哪位大侠帮帮忙
create or replace procedure getSign(id in TEST.USERPHONE%TYPE, signList out array) is
flag number;
begin
flag:=1;
for i in 1..10 loop
select sign||flag into signList(flag) from TEST where userphone=id;
flag:=flag+1;
end loop
end;
不过有错误,哪位大侠帮帮忙
作者: qiu622feng112yuh 发布时间: 2011-09-20
具体什么错误你贴出来撒.
你是想通过传入一个ID然后将其他的字段全部输出是不?
你是想通过传入一个ID然后将其他的字段全部输出是不?
作者: BearFishShow 发布时间: 2011-09-20
你这样拼接字段得用动态SQL吧,试试下面这个(没测试,数组定义可能有问题):
SQL code
返回的那个数组好像不是这么定义的,真要用应该在外面定义一个用户类型,然后这里引用,如:
SQL code
SQL code
create or replace procedure getSign(id in TEST.USERPHONE%TYPE, signList out array) is begin for i in 1..10 loop execute immediate 'select sign'||to_char(i)||' from TEST where userphone='||to_char(id) into signList(flag); end loop end getSign;
返回的那个数组好像不是这么定义的,真要用应该在外面定义一个用户类型,然后这里引用,如:
SQL code
type tp_a is table of binary_integer;
作者: cnwz 发布时间: 2011-09-20
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28