Fle*_*euv 2 oracle plsql stored-procedures oracle-apex
为什么oracle会回来..
ORA-06550:第9行,第3列:PLS-00306:调用'ADD_RULE_RANGE_ATTR'ORA-06550时参数的数量或类型错误:第9行,第3列:PL/SQL:语句被忽略
当我根据程序规范设置所有类型和参数时.
PROCEDURE add_rule_range_attr(
"p_name" IN VARCHAR2,
"p_entity" IN VARCHAR2,
"p_attribute" IN VARCHAR2,
"p_r_negate" IN NUMBER,
"p_ra_comparer1" IN VARCHAR2,
"p_ra_comparer2" IN VARCHAR2
);
Run Code Online (Sandbox Code Playgroud)
最初我的代码在Oracle APEX环境中运行,其中过程的参数由输入变量填充(例如:PX_INPUT_NAME),因此我必须确保我在参数中放入的所有变量都是正确的数据类型.但是,在调用过程时,我使用的变量具有与过程参数所请求的数据类型相对应的默认值.
brg_manager.add_rule_range_attr(
p_name => v_name,
p_entity => v_entity,
p_attribute => v_attribute,
p_r_negate => v_negate,
p_ra_comparer1 => v_comparer1,
p_ra_comparer2 => v_comparer2
);
Run Code Online (Sandbox Code Playgroud)
看看这个sqlfiddle的工作示例.
您需要省略"(过程定义)或使用"around参数标识符调用它:
brg_manager.add_rule_range_attr(
"p_name" => v_name,
"p_entity" => v_entity,
"p_attribute" => v_attribute,
"p_r_negate" => v_negate,
"p_ra_comparer1" => v_comparer1,
"p_ra_comparer2" => v_comparer2
);
Run Code Online (Sandbox Code Playgroud)
模式对象命名规则
每个数据库对象都有一个名称.在SQL语句中,您表示具有带引号的标识符或非带引号的标识符的对象的名称.
带引号的标识符以双引号(")开头和结尾.如果使用带引号的标识符命名模式对象,则每次引用该对象时都必须使用双引号.
| 归档时间: |
|
| 查看次数: |
606 次 |
| 最近记录: |