侧边栏壁纸
博主头像
与晚风述往事博主等级

万般皆下品,唯有读书高。

  • 累计撰写 149 篇文章
  • 累计创建 29 个标签
  • 累计收到 19 条评论

目 录CONTENT

文章目录

Oracle PLS-00306: 调用“字符串”时参数的数目或类型错误

与晚风述往事
2021-10-30 / 0 评论 / 0 点赞 / 1,057 阅读 / 539 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2021-10-30,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

错误信息

【汉】PLS-00306: 调用“字符串”时参数的数目或类型错误

【英】PLS-00306:wrong number or types of arguments in call to 'string'

【详细报错】ORA-06553:PLS-306:wrong number or types of arguments in call to 'string'

在使用call命令执行存储过程时报错。

注意,虽然提示的报错是ORA-06553,但是ORA-06553是PLS类错误,要解决重点是后面的PLS错误代码。

版本

Oracle 【11.2.0.3.0】、【11.2.0.4.0】

简单点就是call命令中调用参数的类型错了。

call命令中传递正确的参数类型。

演示

我这里简单写一个存储过程,它有一个clob的入参,执行会输出入参的值。写法如下:

create or replace procedure testaaa(
a clob  default 'a'
)
as
begin
  dbms_output.put_line(a);
end;

我们先使用入参333来测试一下,模拟报错。

call testaaa(a => 333)

image.png

再使用正确的入参测试一下。

call testaaa(a => 'hello')

image.png

就能完全模拟出该问题出错和出错的原因。

0

评论区