oracle新手,帮忙看下这个存储过程问题在哪里,执行不了

createorreplaceprocedureyyt_getcardinfo(id_iinint)asaccid_oint;beginselectaccidintoac... create or replace procedure yyt_getcardinfo(
id_i in int
) as
accid_o int;
begin
select accid into accid_o from ACC_ACCOUNTRECORDS where tsn=id_i;
end;
/

exec procedure yyt_getcardinfo (‘11’)
展开
 我来答
殇忄路
2014-09-26 · TA获得超过561个赞
知道小有建树答主
回答量:478
采纳率:81%
帮助的人:331万
展开全部
CREATE OR REPLACE PROCEDURE YYT_GETCARDINFO(ID_I IN INT) IS --is 写成 as了
ACCID_O INT;--oracle 里的  INT  没用过!!!还是用number吧
BEGIN
SELECT ACCID INTO ACCID_O FROM ACC_ACCOUNTRECORDS WHERE TSN = ID_I;
END;
追问
创建是可以的,我原来的语句也能创建,就是执行会报错
paynefu
2014-09-26 · TA获得超过118个赞
知道小有建树答主
回答量:109
采纳率:100%
帮助的人:93.3万
展开全部
1、请确保传进去的参数执行后数据只有一行,否则请用游标
2、执行后有没有报错?如果要显示数据,请用dbms_output.put_line
更多追问追答
追问

数据只有一条,报错了

追答
exec procedure yyt_getcardinfo (‘11’)这么执行的?
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hn_allen
2014-09-26 · TA获得超过103个赞
知道答主
回答量:47
采纳率:100%
帮助的人:40.3万
展开全部
具体报神马错误?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式