if c_Line.cat1 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat1;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat2 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat2;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat3 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat3;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat4 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat4;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat5 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat5;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat6 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat6;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat7 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat7;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat8 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat8;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat9 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat9;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat10 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat10;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;这个用循环该怎么写?
for i in 1 .. 10 loop
end loop;
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat1;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat2 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat2;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat3 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat3;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat4 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat4;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat5 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat5;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat6 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat6;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat7 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat7;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat8 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat8;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat9 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat9;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
if c_Line.cat10 <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat10;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;这个用循环该怎么写?
for i in 1 .. 10 loop
end loop;
解决方案 »
- Oracle中多表插入问题
- 在linux 下用.PC 连接其他机子上的ORACLE数据库时
- 如何能够在win2000或win2003中,以计划任务的方式,定时进行数据库的物理备份?在线等待
- 如何让显示的数据根据情况自动获取?
- 求高人帮忙,我自己写的一个过程,它总是提示编译错误
- 请教回退段的问题
- 从另外一个表选择数据插入表,两个表的是一样的,怎么实现
- 请问哪里有Oracle9i的电子教程下载?
- Oracle中的存储过程能不能象SQL Server的存储过程那样,返回结果集
- 我的OracleOEM在WIN2000下启动不了,能给解决吗?
- 游标SQL语句,未报错,但执行后却没有效果????????
- 请问大家,一般大的文本大家都用什么方式存储,怎么获取该文本,该文本怎么插入
c_Line.cat1是输入参数?
总共有10个输入参数?
Cursor Item_Line Is
Select aa. *
From cmp_user.CPC_Mtl_System_Items_Interface aa
Where aa.Batch_Id = p_id; For c_Line In Item_Line Loop
if c_Line.cat% i <> null then
begin
select category_id
into x_category_id
from mtl_categories_v a
where a.category_id = c_Line.cat% i;
exception
when NO_DATA_FOUND then
x_Message := '物料类集无效!';
end;
end if;
end loop;---------->字符联接的语法你查查。