【发布时间】:2016-07-22 13:31:34
【问题描述】:
我收到这样的错误:
java.sql.SQLException:ORA-06550:第 1 行,第 29 列: PLS-00302:必须声明组件“SAVE_DATA_RESTRICTION” ORA-06550:第 1 行,第 7 列: PL/SQL:语句被忽略
这是我的程序:
procedure save_data_restriction( p_user_id in varchar2,
p_cru_country in varchar2,
p_cru_region in varchar2,
p_cru_branch in varchar2,
p_banks in varchar2,
p_global_access in varchar2) is
l_crp_data_restr ccrd_gui.crp_data_restriction%ROWTYPE;
cursor c_crp_data_restr is
select *
from ccrd_gui.crp_data_restriction cdr
where cdr.user_id = p_user_id;
begin
open c_crp_data_restr;
fetch c_crp_data_restr into l_crp_data_restr;
if c_crp_data_restr%notfound then
insert into ccrd_gui.crp_data_restriction (user_id,
cru_country,
cru_region,
cru_branch,
banks,
global_access)
values (p_user_id,
p_cru_country,
p_cru_region,
p_cru_branch,
p_banks,
p_global_access);
elsif nvl(p_cru_country, chr(0)) != nvl(l_crp_data_restr.cru_country, chr(0)) or
nvl(p_cru_region, chr(0)) != nvl(l_crp_data_restr.cru_region, chr(0)) or
nvl(p_cru_branch, chr(0)) != nvl(l_crp_data_restr.cru_branch, chr(0)) or
nvl(p_banks, chr(0)) != nvl(l_crp_data_restr.banks, chr(0)) or
nvl(p_global_access, chr(0)) != nvl(l_crp_data_restr.global_access, chr(0)) then
update ccrd_gui.crp_data_restriction
set cru_country = p_cru_country,
cru_region = p_cru_region,
cru_branch = p_cru_branch,
banks = p_banks,
global_access = p_global_access
where user_id = p_user_id;
end if;
close c_crp_data_restr;
end save_data_restriction;
程序调用:
调用 ccrd.crb_customer_pkg.save_data_restriction(?,?,?,?,?,?)
我是 Oracle 开发的新手。感谢您的帮助。
【问题讨论】: