oracle报错ORA-06550: line 1, column 7: PLS-00306: wrong number or types of arguments in call to 'PR

我的code:CREATEORREPLACEPROCEDUREpromo_ship_sp(date_cutoffdate,monthbb_promolist.month%... 我的code:CREATE OR REPLACE PROCEDURE promo_ship_sp
(date_cutoff date,
month bb_promolist.month%TYPE,
year bb_promolist.year%TYPE,
shopperid OUT bb_basket.idshopper%TYPE,
promo bb_promolist.promo_FLAG%TYPE,
use bb_promolist.used%TYPE := 'N')
IS
BEGIN
SELECT idshopper INTO shopperid
FROM bb_basket
where dtcreated = date_cutoff;
INSERT INTO bb_promolist(idshopper, month, year,promo_flag,used)
VALUES(shopperid, month, year, 1,'Y');
END;
调用exec promo_ship_sp('15-feb-07','apr',2007, shopperid=>:id)
报错BEGIN promo_ship_sp('15-feb-07','apr',2007, shopperid=>:id); END;

*

ERROR at line 1:
ORA-06550: line 1, column 7:
PLS-00306: wrong number or types of arguments in call to 'PROMO_SHIP_SP'
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

救救急~~~麻烦各位了~~~我调了一早上也没弄明白为啥~
对了,还有哦,为什么select into的那个变量一定要是out类型,不然就报错~~~
展开
 我来答
A唐糖糖唐糖糖
2018-04-05 · TA获得超过7262个赞
知道小有建树答主
回答量:42
采纳率:100%
帮助的人:6653
展开全部

可以用Oracle DBA神器,PRM-DUL灾难恢复工具,Schema级别数据恢复。PRM-DULFor Oracle Database , schema级别oracle数据库数据恢复特性 ,PRM,DUL即ParnassusData Recovery Manager是企业级别Oracle数据库灾难恢复工具。PRM可以在无备份的情况下恢复被truncated掉的表,也可以恢复无法打开的Oracle数据库Alter Database Open失败中的数据。

  1. ORA-01650:unable to extend rollback segment NAME by NUM intablespace NAME错误的产生原因,上述ORACLE错误为回滚段表空间不足引起的,这ORACLE数据管理员最常见的ORACLE错误信息,当用户在做一个非常庞大的数据操作导致现有回滚段的不足,使可分配用的回滚段表空间已满,无法再进行分配,就会出现上述的错误。

  2. 解决方法:使用“ALTER TABLESPACE tablespace_name ADD DATAFILE filename SIZE size_of_file”命令向指定的数据增加表空间,根据具体的情况可以增加一个或多个表空间。

  3. 当然这与还与你主机上的裸盘设备有关,如果你主机的裸盘设备已经没有多余的使用空间,建议你不要轻意的增加回滚段表空间的大小,可使用下列的语句先查询一下剩余的tablespace空间有多少,Select user_name,sql_text from V$open_cursorwhere user_name=‘’,如果多余的空间比较多,就可以适当追加一个大的回滚段给表空间使用,从而避免上述的错误。

  4. 你也可以用以下语句来检测一下rollback segment的竞争状况,如果任何一个classcount/sumvalue大于1%,就应该考虑增加rollback segment.ORA-01652。

  5. unable to extend temp segment by num in tablespace name错误产生的具体原因ORACLE临时段表空间不足,因为ORACLE总是尽量分配连续空间,一但没有足够的可分配空间或者分配不连续就会出现上述的现象。

  6. 解决方法:我们知道由于ORACLE将表空间作为逻辑结构-单元,而表空间的物理结构是数据文件,数据文件在磁盘上物理地创建,表空间的所有对象也存在于磁盘上,为了给表空间增加空间,就必须增加数据文件。

spiderrobot
2010-11-18 · TA获得超过871个赞
知道小有建树答主
回答量:930
采纳率:0%
帮助的人:567万
展开全部
参数个数不对,
promo这个参数也要传入,或者设上缺省值
shopperid=>:id这个不能这样写,定义一个未知变量,放这里
select into当然是未知的了,shopperid=>:id是传入了一个值。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式